我有一个SQL语法,它给我的错误:SQL语法错误集团通过
Msg 8120, Level 16, State 1, Line 1 Column 'VEHICLEMASTR.cconduction' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
下面是SQL语法:
SELECT A.cplateno,A.cconduction,A.cname,A.cbatterymodel
,A.dbattery,A.DlastChange,A.nlastoilkm,A.naveragekmday
,A.dkmreading,A.dfranacq,A.dfranexp,A.nlimit,A.dreading
,CONVERT(varchar(2),month(MAX(B.dinsexp)))+'/'+CONVERT(varchar(2),day(MAX(B.dinsexp)))+'/'+CONVERT(varchar(4),year(MAX(B.dinsexp))) as dinsexp
,C.corno,CONVERT(varchar(2),month(MAX(C.dregexp)))+'/'+CONVERT(varchar(2),day(MAX(C.dregexp)))+'/'+ CONVERT(varchar(4),year(MAX(C.dregexp))) as dregexp
FROM VEHICLEMASTR A
LEFT JOIN VEHICLEINSURANCE B
ON A.cplateno = B.cplateno
LEFT JOIN VREGISTRATION C
ON A.cplateno = C.cplateno
GROUP BY A.cplateno
谁能告诉了什么问题?
你的时候你不能把所有列在select语句正在做分组功能。你必须把它们放在group by子句中,或者有一些类型的函数(比如count)来使它们在那里。 – tsells
把那个** VEHICLEMASTR.cconduction **字段也分成一组。因为如果您正在使用任何聚合函数,则所有选定列的列表必须在Group by子句中。 – 2013-06-29 05:03:57
换句话说,我只需要组合cplateno列... –