Código MySQL:
Ver original
y en el servidor me sale este error que podria ser
#1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
| ||||
consulta Mixing of GROUP en mi maquina me funciona perfecto esta consulta
Código MySQL:
Ver original y en el servidor me sale este error que podria ser #1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause |
| ||||
Respuesta: consulta Mixing of GROUP A pesar de lo que digas, esa consulta, tal y como la estás poniendo en el post no te puede estar funcionando en tu PC. No puede porque tiene un error de sintaxis grave: Estás usando una función agregada, sin usar el GROUP BY. Eso es lo que te dice MySQL. Mira:
Código MySQL:
El problema está en el uso de SUM (función agregada) cuando aparece junto a otros campos no afectados por funciones agregadas. En ese caso todos los DBMS, sin importar cuál sea, exigen que se use GROUP BY para establecer a quién pertenecen los subtotales.Ver original ¿Se entiende?
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: consulta Mixing of GROUP Hola gnzsoloyo, Lo que comentas del GROUP BY, en MySQL, es totalmente cierto si activas ONLY_FULL_GROUP_BY en 5.1.6. Server SQL Modes. 11.16.3. GROUP BY and HAVING with Hidden Columns |
| |||
Respuesta: consulta Mixing of GROUP Hola gnzsoloyo, Personalmente activo ONLY_FULL_GROUP_BY, entre muchas otras, en servidores de desarrollo/preproducción para garantizar que todos los equipos de desarrollado escriban sentencias SQL estándares facilitando la portabilidad. Como todo, esto no aplica en todos los casos, si hay un caso donde ciertas extensiones (no estándar) de MySQL son útiles y a priori sabemos no traerá problemas se usan, pero hay que conocer muy bien cada extensión usada. |
| |||
Respuesta: consulta Mixing of GROUP wchiquito, lo mismo digo una tontería, pero... tal y como tienes la consulta sin group by Lo que creo que controlas con eso es no permitir agrupar por un campo que no aparezca en el select. Y por otra parte, el problema podría ser que aunque funcionara por defecto un agrupado automático no sabría qué campo o campos agrupar, pues en tu selección hay varios, y podría ser uno, otro o varios a la vez. Última edición por jurena; 18/02/2012 a las 12:49 |
| ||||
Respuesta: consulta Mixing of GROUP Me parece que yo he tenido un error de interpretación, que se está extendiendo. Lo que a primera instancia creí que te referías a poder suprimir el GROUP BY cuando hay columnas no agregadas, ya que sobre eso era lo que yo hablaba. El ONLY_FULL_GROUP_BY que mencionas, se usa específicamente para no permitir que las columnas no afectadas por las funciones agregadas no estén en el GROUP BY, y es usual poner el requerimiento para hacer que las consultas agrupadas se ajusten a un estandar portable (en el caso de MySQL, hay un debate sobre si MySQL está o no más cerca del estandar ANSI precisamente porque lo permite). Eso lo entiendo porque estoy actualmente todo el día trabajando con Oracle, donde eso es estándar básico. Pero en este caso el problema no se da por poner un GROUP BY con columnas ocultas o parciales, sino porque el forista directamente no puso el GROUP BY, y eso es lo que MySQL le está diciendo. Personalmente, considero que el uso de columnas ocultas, o agrupamientos parciales en MySQL son potentes (cuando se los entiende y domina), ya que facilitan ciertas sintaxis, al evitar tener que hacer anidamientos mayores de consultas. Es una pena que los demás DBMS no los admitan.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: consulta Mixing of GROUP Hola gnzsoloyo/jurena, Es correcto, creo que hubo una mala interpretación de mi parte. El problema en la consulta de Fabu_dina es que efectivamente falta el GROUP_BY al tener columnas no afectadas por funciones de agregación. |
Etiquetas: |