![]() |
El primer registro de tabla sql
hola foro, tengo una tabla con un campo numero que se incrementa automaticamente a esta misma tabla tengo un campo de condicion 'NEW' o 'OLD' ahora bien quiero que sql recorra la tabla busque todo lo que tengan la condicion 'NEW' y me lo ordene por numero, es decir quiero ver solo el primer registro que tiene el numero mas antiguo:
Ejemplo 10 xxxx xxxxx xxxx xxxx Activo xxx xxxx 6 xxxx xxxxx xxxx xxxx Activo xxx xxxx 11 xxxx xxxxx xxxx xxxx Activo xxx xxxx 7 xxxx xxxxx xxxx xxxx Activo xxx xxxx si yo realizo la consulta me trae me debería traer el numero 6 (Registro mas Antiguo dentro de la tabla) pero por algo que talvez estoy obviando me esta trayendo e el numero 7
Si alguien tiene alguna idea que como realizar esta consulta se lo agradeceria |
La clausula TOP sirver para, de 100 registros, devolver solo los primeros N *que cumplan la condición*.
Esta NO "analiza" los resultados. --- Si tienes un SQL Server relativamente nuevo la forma mas simple es con una clausula window, tipo: https://stackoverflow.com/questions/...w-from-a-group
|
También puedes usar la función MIN, ya que lo que quieres es el mínimo valor del campo NUMERO.
Yo creo que esto te puede funcionar:
Esto busca en la tabla el mínimo valor del campo NUMERO según el WHERE (que debería ser 6) y luego hace la JOIN para traerse el resto de campos de la tabla. NOTA: Asumo que ese campo NUMERO debe tener un índice, si no es así añádeselo. |
Cita:
7 <--- 6 5 ... La consulta correcta sería:
|
Cita:
Código:
begin |
Tienes el open antes de cargar la sentencia SQL
|
Cita:
Código:
With ADOQuery1 do |
Aquí tienes un lío de comillas.
Debería ser
Admás no se bien qué es el "estatus =:" |
Como te han indicado, las comillas de 'NEW' están mal.
Yo prefiero usar QuotedStr(miDato), siempre que tengo que poner comillas. Además '=:' indica que le pasas un parámetro. O bien sobran las comillas de 'NEW' y tienes que indicar el valor de ese parámetro, o bien sobra ':' |
Cita:
Código:
procedure TFormCaja.SpeedButton1Click(Sender: TObject); Adjunto error NOTA: el estatus es un campo que me dice si es nuevo 'NEW' o ya ha sido utilizado 'OLD' la idea que haga un filtro de todos lo que tengan la condicion 'NEW' |
Estimado puede utilizar el método indicado por el colega kuan-yiu o usar parametros...
Saludos y buena suerte... |
Cita:
Cita:
Si tienes un error pero no das detalles de cual es, es difícil saber qué está pasando o darte más información. |
La franja horaria es GMT +2. Ahora son las 23:27:09. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi