Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   problema en consulta (https://www.clubdelphi.com/foros/showthread.php?t=54101)

metroyd 09-03-2008 06:54:33

problema en consulta
 
Que tal, tengo un problema con una consulta sql. Me interesa obtener el valor del indice del ultimo registro(que es numerico y va de 1 hasta N). Estoy trabajando en MySQL y delphi 6. Lo intento de dos maneras y no puedo, compila bien y todo, pero al momento de ejecutarlo me aparecen los errores:
1.
Código Delphi [-]
DataModule1.ADOQuery3.Close;
   DataModule1.ADOQuery3.SQL.Clear;
   DataModule1.ADOQuery3.SQL.Add('select top 1 * from servicio order by progresivo desc');
   //DataModule1.ADOQuery2.ExecSQL;
   DataModule1.ADOQuery3.Open;
   form2.Label2.Caption:=DataModule1.ADOQuery3.Fieldbyname('progresivo').asstring;

2.
Código Delphi [-]
DataModule1.ADOQuery3.Close;
   DataModule1.ADOQuery3.SQL.Clear;
   DataModule1.ADOQuery3.SQL.Add('select * from servicio where progresivo = 
(Select max(progresivo) from servicio)');
   //DataModule1.ADOQuery2.ExecSQL;
   DataModule1.ADOQuery3.Open;
orm2.Label2.Caption:=DataModule1.ADOQuery3.Fieldbyname('progresivo').asstring;

Ambas consultas me funcionan bien en access, pero aki no puedo correrlas

dec 09-03-2008 06:59:30

Hola,

Cita:

(...) pero al momento de ejecutarlo me aparecen los errores:
Sería bueno conocer los errores, para la próxima vez. ;)

Creo que la consulta podría quedar tal que así en MySQL:

Código SQL [-]
SELECT * FROM servicio ORDER BY progresivo DESC LIMIT 1;

El asunto estaría en consultar por el registro "mayor" (para eso el "ORDER BY") y limitar la consulta a ese registro (para eso el "LIMIT").

metroyd 09-03-2008 19:35:58

Cita:

Empezado por dec (Mensaje 271814)
Hola,



Sería bueno conocer los errores, para la próxima vez. ;)

Creo que la consulta podría quedar tal que así en MySQL:

Código SQL [-]SELECT * FROM servicio ORDER BY progresivo DESC LIMIT 1;


El asunto estaría en consultar por el registro "mayor" (para eso el "ORDER BY") y limitar la consulta a ese registro (para eso el "LIMIT").

Gracias, esto ha funcionado bien!!!!


La franja horaria es GMT +2. Ahora son las 20:32:15.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi