[英]Combining these two SQL statements into one
將這兩個SQL語句合並為一個的最佳方法是什么? 我嘗試使用union,但似乎無處可去。
select id as id from likes where type=1;
select sum(votes) as votes from likes where parent=id;
這是likes
表:
id type parent country votes
1 1 0 US 0
2 2 1 US 6 // This +
19 3 1 US 3 // This
3 3 2 US 3
7 3 2 US 3
4 10 3 US 1
5 10 3 US 1
6 10 3 US 1
10 10 7 US 1
9 10 7 US 1
8 10 7 US 1
20 10 19 US 1
21 10 19 US 1
22 10 19 US 1
這是我想要實現的結果:
id | votes
---------------
1 | 9
試試這個:
SELECT
l1.id,
SUM(l2.votes) AS Totalvotes
FROM likes AS l1
INNER JOIN likes AS l2 ON l1.id = l2.parent
WHERE l1.type = 1
GROUP BY l1.id;
在這里看到它:
這會給你:
| ID | TOTALVOTES |
-------------------
| 1 | 9 |
SELECT SUM(votes) AS votes
FROM likes
WHERE parent IN (SELECT id FROM likes WHERE type=1)
HTH
這應該可以解決你的問題,我相信:
SELECT parent AS id, SUM(votes) AS votes FROM likes WHERE parent IN (SELECT id FROM likes WHERE type = 1) GROUP BY parent;
你可以試試這個
select id,sum(votes) as votes from likes where type=1 and parent=id;
希望這可以幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.