OBTENER LOS REGISTROS DE ÚLTIMA ACTUALIZACIÓN

10/11/2007 - 11:50 por Oscar | Informe spam
Hola a todos,

no se si es el lugar mas indicado, pero es que me estoy volviendo loco con esta
consulta SQL.

Tengo una tabla con 7 campos, entre ellos el nombre del producto (NOMBRE), la
referencia del producto REF, y la fecha en que se introdujo esa referencia FECHA.

He aquí un ejemplo:

Campo1 ... Campo4 NOMBRE REF FECHA

X X P1 1 1/10/07
X X P2 2 3/10/07
X X P1 4 4/10/07
X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07

Lo que intento conseguir es obtener un registro por cada nombre de producto que
me indice la referencia y el resto de los campos de la última fecha de
actualización.

Es decir:

X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07


yo imagina que tiene que ser algo sencillo, pero llevo pegandome con ello y no
lo consigo ( y no lo quiero hacer por código de programación !! ). He intentado
con DISTINCT, MAX, TOP, LIMIT, GROUP BY ) y no doy con ello

alguna idea???


Muchas gracias de antemano,

Un saludo.

Oscar.

Preguntas similare

Leer las respuestas

#1 Leonardo Azpurua
10/11/2007 - 12:36 | Informe spam
"Oscar" escribió en el mensaje
news:
Hola a todos,

no se si es el lugar mas indicado, pero es que me estoy volviendo loco con
esta consulta SQL.

Tengo una tabla con 7 campos, entre ellos el nombre del producto (NOMBRE),
la referencia del producto REF, y la fecha en que se introdujo esa
referencia FECHA.

He aquí un ejemplo:

Campo1 ... Campo4 NOMBRE REF FECHA

X X P1 1 1/10/07
X X P2 2 3/10/07
X X P1 4 4/10/07
X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07

Lo que intento conseguir es obtener un registro por cada nombre de
producto que me indice la referencia y el resto de los campos de la última
fecha de actualización.

Es decir:

X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07


yo imagina que tiene que ser algo sencillo, pero llevo pegandome con ello
y no lo consigo ( y no lo quiero hacer por código de programación !! ). He
intentado con DISTINCT, MAX, TOP, LIMIT, GROUP BY ) y no doy con ello

alguna idea???



Hola.

SELECT ...
FROM laTabla As T
WHERE Fecha = (SELECT MAX(Fecha)
FROM laTabla
WHERE Nombre = T.Nombre)

Salud!
Respuesta Responder a este mensaje
#2 Oscar
10/11/2007 - 13:08 | Informe spam
Maravilloso!!! Funciona!!

Muchas gracias!!


PD: existe la posibilidad de que limite la busqueda a aquellas referencias que
contengan solo 7 caracteres numéricos?

Leonardo Azpurua escribió:
"Oscar" escribió en el mensaje
news:
Hola a todos,

no se si es el lugar mas indicado, pero es que me estoy volviendo loco con
esta consulta SQL.

Tengo una tabla con 7 campos, entre ellos el nombre del producto (NOMBRE),
la referencia del producto REF, y la fecha en que se introdujo esa
referencia FECHA.

He aquí un ejemplo:

Campo1 ... Campo4 NOMBRE REF FECHA

X X P1 1 1/10/07
X X P2 2 3/10/07
X X P1 4 4/10/07
X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07

Lo que intento conseguir es obtener un registro por cada nombre de
producto que me indice la referencia y el resto de los campos de la última
fecha de actualización.

Es decir:

X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07


yo imagina que tiene que ser algo sencillo, pero llevo pegandome con ello
y no lo consigo ( y no lo quiero hacer por código de programación !! ). He
intentado con DISTINCT, MAX, TOP, LIMIT, GROUP BY ) y no doy con ello

alguna idea???



Hola.

SELECT ...
FROM laTabla As T
WHERE Fecha = (SELECT MAX(Fecha)
FROM laTabla
WHERE Nombre = T.Nombre)

Salud!


Respuesta Responder a este mensaje
#3 Oscar
10/11/2007 - 13:22 | Informe spam
Ok, ya lo tengo:

WHERE (REFERENCIA LIKE '_______') AND (ISNUMERIC(FREFERENCIA) = 1)

Nota: 7 veces caracter _ ;)

Oscar escribió:
Maravilloso!!! Funciona!!

Muchas gracias!!


PD: existe la posibilidad de que limite la busqueda a aquellas
referencias que contengan solo 7 caracteres numéricos?

Leonardo Azpurua escribió:
"Oscar" escribió en el mensaje
news:
Hola a todos,

no se si es el lugar mas indicado, pero es que me estoy volviendo
loco con esta consulta SQL.

Tengo una tabla con 7 campos, entre ellos el nombre del producto
(NOMBRE), la referencia del producto REF, y la fecha en que se
introdujo esa referencia FECHA.

He aquí un ejemplo:

Campo1 ... Campo4 NOMBRE REF FECHA

X X P1 1 1/10/07
X X P2 2 3/10/07
X X P1 4 4/10/07
X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07

Lo que intento conseguir es obtener un registro por cada nombre de
producto que me indice la referencia y el resto de los campos de la
última fecha de actualización.

Es decir:

X X P1 5 5/10/07
X X P2 10 4/10/07
X X P3 14 4/10/07


yo imagina que tiene que ser algo sencillo, pero llevo pegandome con
ello y no lo consigo ( y no lo quiero hacer por código de
programación !! ). He intentado con DISTINCT, MAX, TOP, LIMIT, GROUP
BY ) y no doy con ello

alguna idea???



Hola.

SELECT ...
FROM laTabla As T
WHERE Fecha = (SELECT MAX(Fecha)
FROM laTabla
WHERE Nombre = T.Nombre)

Salud!


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida