FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Nested Aggregate Functions
tengo un problema con interbase. Tengo que hacer un select y me da un error: "nested aggregate functions are not allowed". Un amigo me ha dicho que con mysql se puede hacer SELECT MAX(COUNT(ID_PEL)) FROM VISTA GROUP BY ID_PEL. El problema es que interbase no deja.
Alguien sabe como puedo hacer el select que me retorne el maximo de un count que esta agrupado por un campo??? No se si me he explicado bien, pero bueno, espero respuestas. Ta Luego! |
#2
|
||||
|
||||
mysql podria permitir muchas cosas que no son parte del estándar, y que como esta sentencia que has puesto, no tienen mucho sentido para mi.. ¿estas seguro que mysql la permite?
Creo que podrias hacer simplemente y quedarte solo con el primer registro, o bien hacer una vista que agrupe y luego un select max() sobre dicha vista. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#3
|
|||
|
|||
A ver...
Eso era un ejemplo... Mi caso es: tengo 3 tablas (archivo,busqueda, devuelve):
- archivo es un tabla con su clave_archivo i datos - busqueda tiene su clave i otros datos - devuelve es una tabla formada por la clave_archivo i la clave_busqueda, donde por cada busqueda se dan tantas filas como archivos devuelve. Ejemplo: Clave_busqueda Clave_archivo 1 2 1 5 2 1 3 2 La consulta que quiero hacer es visualizar el nombre del archivo mas devuelto, se haria : SELECT COUNT(clave_Archivo) FROM DEVUELVE GROUP BY clave_archivo, y lo que no se hacer es como devolver el maximo de este count. GRACIASSSS |
#4
|
||||
|
||||
La solución es la misma, ¿no te parece?
Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#5
|
|||
|
|||
quiero el maximo pero...
con ese codigo me hace el count i hace la tabla, la ordena de mayor a menor... Pero yo lo que quiero es que solo me devuelva el maximo, es decir, la primera fila.
Como hago el MAX( del codigo) ??? thanks |
#6
|
||||
|
||||
Cita:
Cita:
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#7
|
|||
|
|||
pero como?
pero como es el codigo para seleccionar el primer registro o el maximo de:
Select id_pel, count(*) from tabla group by id_pel order by count(*) desc; ??????? Es eso q no se... |
#8
|
||||
|
||||
si haces una vista, y suponinendo que el count(*) se llamará contador, pues
Si no, pues depende de la herramienta con que ejecutes la consulta. Si es delphi, pues abris en dataset (digamos un IBQuery), apuntas el valor del primer registro y luego lo cerras. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#9
|
|||
|
|||
...
Es q no es para hacer ninguna aplicacion, es por un ejercicio que tengo. Es para ver si se puede solucionar esto con solo un select... sino, probare lo de la vista.
|
|
|
|