Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Extrae un peso de un histórico

Estas en el tema de Extrae un peso de un histórico en el foro de SQL Server en Foros del Web. Hola, Tengo un problema, necesito sacar un Id de pieza de una tabla histórico de pesos, en la que este Id se repite varias veces. ...
  #1 (permalink)  
Antiguo 10/02/2006, 02:59
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
Extrae un peso de un histórico

Hola,

Tengo un problema, necesito sacar un Id de pieza de una tabla histórico de pesos, en la que este Id se repite varias veces.

El problema en sí es que necesito filtrar por el primer peso y por el último en diferentes consultas.

La estructura de la tabla es la siguiente:

Código:
IdHistorico = Autonumérico
IdPieza = Long
Peso = Long Double
IdEstado = Long
Fecha = Fecha
Por lógica para sacar el primer peso de los artículos se podría hacer una cláusula Order By de IdHistorico que siempre estará ordenado. Pero como también inserto una cláusula DISTINCT me da un error, les pongo la consulta.

Código:
SQL = "Select DISTINCT IdPieza From HistoricoPesos Where Peso>=" & Replace(RS!De, ",", ".") & " And Peso<" & Replace(RS!A, ",", ".") & " Order By IdHistorico ASC"
El error es este:

Cita:
La cláusula Order By (IdHistorico) está en conflicto con DISTINCT
¿Ha alguien se le ocurre algo?

Muchas gracias desde ya!
  #2 (permalink)  
Antiguo 10/02/2006, 15:27
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Prueba con:

Select TOP 1 IdPieza
From HistoricoPesos Where [...]
Order By IdHistorico ASC
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 13/02/2006, 02:44
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
No me serviría, porque quiero sacar todos los ID de pieza, no solo 1, lo resolví insertando IdHistorico en la consulta también, quedó así:

Cita:
SQL = "Select DISTINCT IdPieza, IdHistorico From HistoricoPesos Where Peso>=" & Replace(RS!De, ",", ".") & " And Peso<" & Replace(RS!A, ",", ".") & " Order By IdHistorico ASC"
  #4 (permalink)  
Antiguo 13/02/2006, 05:24
 
Fecha de Ingreso: enero-2005
Ubicación: Benifaió (Valencia)
Mensajes: 319
Antigüedad: 19 años, 3 meses
Puntos: 0
Si pretendes ordenador por un campo, éste lo debes de mostrar en el SELECT
  #5 (permalink)  
Antiguo 13/02/2006, 15:38
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Cita:
Iniciado por fredy666
Si pretendes ordenador por un campo, éste lo debes de mostrar en el SELECT
No necesariamente, puedes ordenar sin que éste sea mostrado en el select.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:04.