我需要SQL查询的帮助:
以下是我的草案,例如SQL: SQL draft
我有5个示例行,其中包含5个“类别”列中的一些变量:“catid,parentid,parentid2,parentid3和parentid4”,6列为SUM。
我需要SQL查询在eventsheduler或CRON中设置UPDATE SUM变量用于EACH catid,其中SUM列“sum”来自所有行,其中包含parentid,parentid2,parentid3或parentid4或者catid具有类似NULL的parentid,但是有parentid,parentid2,parentid3或parentid4中有这个catid的很多行 - 然后我需要用来自该问题的行中所有“sum”列的sum来更新这一行。
在这个例子中有5行,catid就像142。 有R2和R3与142作为catid。然后我需要用19000更新R2和R3的SUM列(SUM / R1 + SUM / R2 + SUM / R3 + SUM / R4 + SUM / R5)
请问有什么帮助吗?我真的很感激......
SELECT q.userid, q.categoryid, sum(q.pointsasall) as ilosc FROM qa_catpoints q
WHERE (q.categoryid = q.parentid OR q.parentid2 OR q.parentid3 OR q.parentid4)
group by q.userid, q.categoryid ORDER BY q.userid ASC
表格结构:
CREATE TABLE `qa_catpoints` (
`categoryid` int(11) NOT NULL,
`catname` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`parentid` int(11) NOT NULL,
`parentid2` int(11) NOT NULL,
`parentid3` int(11) NOT NULL,
`parentid4` int(11) NOT NULL,
`userid` int(11) NOT NULL,
`pointsasall` int(11) NOT NULL,
`pointsasall2` int(11) NOT NULL
)
成功查询后的预期输出: