Hola Foro! ya hace un par de días que estoy con esta consulta y no pude resolverla aún, espero me puedan dar una mano.
Código:
select distinct locales.nombre, grupo, categorias.nombre as cat, locales.id_locales from locales join (categlocales join categorias on categorias.id_categorias = categlocales.id_categorias) on locales.id_locales = categlocales.id_locales where grupo = 'Casa' group by locales.nombre
Si a esa consulta le saco el group by locales.nombre recibo el siguiente resultado:
nombre| grupo | cat | id_locales
--------------------------------------
BURANI | Casa | Bazar |43
QUALCOSA | Casa | Bazar |19
GARBARINO | Casa | Electrónica |17
GARBARINO | Casa | Informática|11
GARBARINO | Casa | Electrodomesticos|10
Pero como se puede ver en los resultados uno de los locales se repite 3 veces por tener 3 categorias diferentes, por eso quise agrupar por el nombre del local, sin embargo me tira este error que no entiendo por qué.
Código:
Server: Msg 8120, Level 16, State 1, Line 1Column 'categorias.grupo' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Server: Msg 8120, Level 16, State 1, Line 1Column 'categorias.nombre' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Server: Msg 8120, Level 16, State 1, Line 1Column 'locales.id_locales' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Gracias por su tiempo.