Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Error en top en un query (https://www.clubdelphi.com/foros/showthread.php?t=50696)

Petolansa 26-11-2007 04:24:31

Error en top en un query
 
Buenas gente el siguiente codigo me da error en el 5 del top 5, un query no soporta top? Disculpen si es una burrada lo que dije o el error esta en otro lado.
Me tira Invalid use of keyword token 5 line 1

Código SQL [-]
Select top 5 clientes.clicod,
SUM(factura.importetotal) as sumaimportes,
COUNT (factura.numfactura) as numfacturas
from clientes, factura
where clientes.clicod = factura.clicod
group by clientes.clicod
order by sum (factura.importetotal)desc

En teoria lo que quiero hacer es que me seleccione los 5 principales clientes y que me los muestre en un dbgrid,y la plata que va gastando y la cantidad de facturas.

Gracias. Saludos

marcoszorrilla 26-11-2007 07:00:22

Tienes que decirnos, tablas y motor con que atacas a las mismas, sospecho que debe de ser Paradox, que no soporta dicha instrucción "Top".

Un Saludo.

Petolansa 26-11-2007 07:30:16

Exactamente era Paradox Marcoszorrilla, por lo tanto como podre hacerlo mediante paradox? Es posible?.

Gracias

Podria migrar a dbase , dbase soporta esos comandos?. Es un sistemita para una tesis de prueba, prometo luego empezar duro con firebird.
Es un poco mejor dbase que paradox, en este momento voy por la mitad,Por lo tanto no tengo cargados registros ni nada me faltarian algunos reportes, y graficos,
es por esto que queria algunos top para listar por mejores clientes, productosm mas vendidos, etc.

Gracias por las respuestas

marcoszorrilla 26-11-2007 10:47:14

Ni DBase, ni Paradox, atacados desde el BDE soportan Top.

Un truco sucio puede ser, Ordenarlos por ejemplo por cantidad o el criterio que desees ir a ese registro 5 y tomar dicho valor, para relanzar la consulta de nuevo con una condición Where <= a ese registro.

Un Saludo.

Petolansa 26-11-2007 12:05:39

OK, gracias, y con ADO, no podria tampoco no?

Gracias

Podrias orintarme como hacerlo de la forma que em indicas de truco sucio?. Espero no abusar de la ayuda

marcoszorrilla 26-11-2007 14:36:47

Con ADO, si se puede, lo que no he comprobado es si con ADO-PARADOX se puede, pero ADO-ACCESS, sí.

Un Saludo.

Petolansa 26-11-2007 17:33:21

Ok gracias probare luego y les comento si puede con ADO, otra consultita, puedo hacer graficos mediante un query paradox y teechart?
Porque estuve intentando y no logro que me aparezca el dataset en el tchart.

Gracias

Disculpen, me meti en las demos del teechart y vi que si lo hacen con un query y un datasource, mil disculpas.


La franja horaria es GMT +2. Ahora son las 02:41:11.

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