SQL Server - consulta registro unico

 
Vista:
sin imagen de perfil
Val: 6
Ha disminuido 1 puesto en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por kas (10 intervenciones) el 28/09/2021 17:47:53
Buenas a todos y daros las gracias por adelantado.... necesito de vuestra ayuda, quiero quedarme con registros unicos, he creado esta select

select p.codart, max(m.Fecha) as fecha,m.PrecioMedio
from pruebass as p
left join movimientostock as m on ( p.codart=m.CodigoArticulo)
where m.ejercicio=2021
group by p.codart,m.PrecioMedio
order by 2 desc

En la imagen marco solo lo que quiero que me devuelva la select pero no lo consigo, en la tabla pruebass he puesto 2 codart para hacer la prueba, la intencion es quedarme con el ultimo registro de cada articulo y su precio.

Captura

espero vuestra ayuda gracias !!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por Isaias (4558 intervenciones) el 28/09/2021 17:52:18
UNICOS, en base a que columna?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 6
Ha disminuido 1 puesto en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por kas (10 intervenciones) el 28/09/2021 18:31:38
en base a codigo de articulo,
perdon no lo explique bien, seria que solo apareciera los ultimo articulos con su precio y su fecha


01LAVBALS982XD | 2021-09-28 00:00:00.000 | 372.0116666666
01COCBEKS42009 | 2021-09-23 00:00:00.000 | 165.6200000000

espero tu ayuda, gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por Isaias (4558 intervenciones) el 28/09/2021 19:04:14
¿No te sirve el MAX con GROUP BY?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 6
Ha disminuido 1 puesto en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por kas (10 intervenciones) el 29/09/2021 09:02:40
pues si me indicas como seria la select,
porque no lo consigo............no me sale

muchas gracias por tu ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por Isaias (4558 intervenciones) el 29/09/2021 15:46:12
Para no teclear los datos, ¿me regalas los registros que muestras y hacer mis pruebas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por Isaias (4558 intervenciones) el 30/09/2021 16:24:38
Gracias

Este query:
1
2
3
4
5
6
7
SELECT T1.codart, T2.fecha, PrecioMedio
 
  FROM [Tester].[dbo].[hacerpruebas] T1
  INNER JOIN
(SELECT DISTINCT codart, max(fecha) as fecha
  FROM [Tester].[dbo].[hacerpruebas]
  GROUP BY codart) T2 ON T1.codart = T2.codart AND T1.fecha = T2.fecha

Me arroja este resultado:

codart fecha PrecioMedio
01LAVBALS982XD 2021-09-28 00:00:00.000 3720116666666
01COCBEKS42009 2021-09-23 00:00:00.000 1656200000000
01COCBEKS42009 2021-09-23 00:00:00.000 1393400000000

Y es porque tienes dos registros IDENTICOS con el mismo codart y fecha

1
2
SELECT * FROM [Tester].[dbo].[hacerpruebas] T1
WHERE codart = '01COCBEKS42009' and fecha ='2021-09-23 00:00:00.000'

codart fecha PrecioMedio
01COCBEKS42009 2021-09-23 00:00:00.000 1656200000000
01COCBEKS42009 2021-09-23 00:00:00.000 1393400000000
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 6
Ha disminuido 1 puesto en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por kas (10 intervenciones) el 04/10/2021 11:03:57
Mil gracias !!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta registro unico

Publicado por Isaias (4558 intervenciones) el 04/10/2021 15:59:37
De nada, espero te haya servido el codigo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar