Query ;
SELECT ch.CharID,ch.CharName16, it.OptLevel, obj.ReqLevel1, item.ItemClass
FROM _Items as it
LEFT JOIN [dbo].[_Inventory] as inv ON it.ID64 = inv.ItemID
LEFT JOIN [dbo].[_Char] as ch ON inv.CharID = ch.CharID
LEFT JOIN [dbo].[_RefObjCommon] as obj ON it.RefItemID = obj.ID
LEFT JOIN [dbo].[_RefObjItem] as item ON obj.Link = item.ID
LEFT JOIN [dbo].[_BindingOptionWithItem] as adv ON it.ID64 = adv.nItemDBID
WHERE ch.CharName16 IS NOT NULL
AND CodeName128 NOT LIKE '%stone%'
AND CharName16 NOT LIKE '%]%'
AND inv.Slot < 7
Query is working fine but ;
INSERT INTO ItemPoints (
CharID
, CharName16
, OptLevel
, ReqLevel1
, ItemClass
, TotalPoint
)
SELECT CharID
, CharName16
, SUM(OptLevel) AS OptLevel
, SUM(ReqLevel1) AS ReqLevel1
, SUM(ItemClass) AS ItemClass
, SUM(OptLevel) + SUM(ReqLevel1) + SUM(ItemClass) AS TotalPoint
FROM (
SELECT ch.CharID, ch.CharName16, it.OptLevel, obj.ReqLevel1, item.ItemClass
FROM _Items as it
LEFT JOIN [dbo].[_Inventory] as inv ON it.ID64 = inv.ItemID
LEFT JOIN [dbo].[_Char] as ch ON inv.CharID = ch.CharID
LEFT JOIN [dbo].[_RefObjCommon] as obj ON it.RefItemID = obj.ID
LEFT JOIN [dbo].[_RefObjItem] as item ON obj.Link = item.ID
LEFT JOIN [dbo].[_BindingOptionWithItem] as adv ON it.ID64 = adv.nItemDBID
WHERE ch.CharName16 IS NOT NULL
AND CodeName128 NOT LIKE '%stone%'
AND inv.Slot < 7
) tbl
GROUP BY CharName16
But sql server give this error ;
Column 'tbl.CharID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
I dont understand this error and how can I fix?