FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ordenar consulta SQL por campo agregados
Hola, estoy utilizando D2007, ADO y access, en la siguiente consulta SQL quiero:
1º Ordenarla por el campo agregado COSTE1 Si pongo la siguiente instrucción: Da error “No se han especificado valores para alguno de los parámetros requeridos” He probado con pero no hace nada 2º Añadirle una instrucción para que muestre solo los registros si el campo agregado NUEVA_PLAZA es distinto de NULL, al ser un campo agregado no sé si se puede hacer.
|
#2
|
||||
|
||||
Cita:
Hay varias cosas que me llaman la atención en tu código, pero desconozco si será omisión en el copiado... Primera duda: ¿ Seguro que el nombre del campo está declarado en la tabla como "gss2_Centros_concertados.c_coste1" ? Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 10-12-2013 a las 19:02:06. |
#3
|
|||
|
|||
No, en la tabla no hay ningún campo llamado gss2_Centros_concertados.c_coste1, ni en ninguna tabla, ya que se trata de un campo agregado, ese es mi problema. El campo COSTE1 se forma en la consulta. He probado a ordenarlo por el nº de columna (10), pero no funciona cuando el campo es agregado.
Solo consigo ordena la consulta por cualquier de los campos definidos en las tablas.
Gracias por responderme. Un saludo. |
#4
|
||||
|
||||
Hola Jose Manuel.
Al ver tu código me parece que estas confundiendo los nombres de los campos persistentes del componente, con los declarados en la creación de la tabla o los obtenidos en la consulta SQL. Por dar un ejemplo, podes armar tu consulta de este modo: Y luego obtener el valor deseado de este modo:
Pero no podes enviar en la cadena de la consulta el nombre del campo persistente como en el siguiente ejemplo: Esto último es erróneo, la base de datos no esta enterada de que o quién es "DataModule1.DataSet1Campo1". Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
|||
|
|||
Gracias de nuevo por contestarme. Yo tengo las siguientes opciones para ordenar la tabla, y todas me funcionan excepto la numero 7
si pongo no da error, pero no hace nada. si pongo error:"No se han especificado valores para algunos de los parámetros requeridos." No sé, si es posible ordenar por un campo calculado de un SubSelect.
|
#6
|
||||
|
||||
Hola Jose Manuel.
¡ Ahora entiendo el orígen de los nombres largos !, por ejemplo gss1_Entidades_gestoras es el nombre de una tabla ¿ correcto ? Me confundió verlos fuera del ' ' en el mensaje #1 (como si no fueran parte de la cadena SQL). En tu código SQL tenes declarado el parámetro ":f_ultima" y por el tipo de error que mencionas ,entonces pregunto: ¿ Estas asignándole valor a este antes de ejecutar la consulta ? Ejemplo:
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#7
|
|||
|
|||
Duda en ORDER BY campos agregados
Hola, si te fijas en el primer post, decia que todo me funcionaba correctamente en mi consulta. La duda que tenia era saber si se podia ordenar el resultado por un campo agregado, es decir construido en el momento de realizar la consulta, teniendo en cuenta que estoy utilizando D2007, ADO y ACCES.
Un saludo y gracias por todo. |
#8
|
||||
|
||||
Buenas noches,
quería comentar un par de cosas. 1.- Si no te funciona así, tal y como lo tienes, prueba a sustituir el order by campo por la propia select que lo construye. algo así SELECT bla,bla,bla, select sum(campo) from tabla As Campo1 FROM TABLA2 ORDER BY select sum(campo) from tabla 2.- Supongo que puedes sustituir esos campos calculados por unos inner join de las tablas gss3_conciertos , gss4_plazas_actuales y gss5_preciosxplaza Si es posible ( no lo sé, tendría que tener más información y tiempo ) no tendrías ningún problema para hacer lo que estás planteando. No sé, es cuestión de hacer pruebas. De todas maneras, tendrías que probar en el propio acces a ver si tragan las consultas. Si traga el access, traga ADO, ya que realmente es el "motor de bbdd" el que te pondría trabas. También me ha ocurrido que ciertas consultas que en otros motores he podido hacer, en access he tenido que hacer subconsultas, ya que el parser no las soporta. Tampoco es tan problemático. Prueba y nos cuentas. Saludos y suerte
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ordenar un campo lookup | Ripoll1021 | Varios | 3 | 14-08-2020 13:17:17 |
Ordenar un campo | Pacoflaco | Tablas planas | 4 | 07-10-2008 21:21:35 |
Ordenar por un campo calculado | IVAND | SQL | 0 | 24-11-2004 02:17:28 |
Ordenar por campo | ElCherchu | Varios | 3 | 20-10-2004 19:24:51 |
Ordenar por campo lookup | xerkan | Firebird e Interbase | 5 | 16-01-2004 09:59:08 |
|