¿Qué estoy haciendo mal aquí? Estoy recibiendo este error:Cada expresión GROUP BY debe contener al menos una columna que no sea una referencia externa
SELECT LEFT(SUBSTRING(batchinfo.datapath, PATINDEX('%[0-9][0-9][0-9]%', batchinfo.datapath), 8000),
PATINDEX('%[^0-9]%', SUBSTRING(batchinfo.datapath, PATINDEX('%[0-9][0-9][0-9]%',
batchinfo.datapath), 8000))-1),
qvalues.name,
qvalues.compound,
qvalues.rid
FROM batchinfo JOIN qvalues ON batchinfo.rowid=qvalues.rowid
WHERE LEN(datapath)>4
GROUP BY 1,2,3
HAVING rid!=MAX(rid)
Me gustaría agrupar por la primera, segunda y tercera columnas que tienen el máximo librado.
Funciona bien sin el grupo por tener.
si saco el tener aún recibo el mismo error –
@herrow no GROUP BY liberé, ni lo rodeas en el SELECT con una función de suma como SUM, MIN, MAX etc. Todavía no estoy seguro de qué Estás tratando de salir ... –