[英]Values from table with variables
表 R(A1,A2,A3,A4,A5,A6) 它有 6 列自然數 (0,1,2,3,..)
R
-----------------------------
A1| A2 |A3 |A4 | A5 |A6
0 | 1 | 0 | 1| 1 |0
1 | 0 | 0 | 1 | 0 |0
0 | 0 | 0 | K |0 |0
0 | 0 | 1 |0 | 1 |0
0 | 1 | 1 | 1 | 1 |0
1 | 1 |1 | 1 | 0 |1
1 | 1 | 1 | 1 | 0 |1
1 | 1 | 1 | 0 | M |1
1| 1 | 0 |1 | 1 |0
0 | 1 |0 |1 | 0 |0
1 | 1 | 0 |0 | 0 |0
問題:對於什么值 K 和 M,SQL 執行代碼計算/產生結果 (SUM(d),SUM(e)) 一對值 (15,22)?
信息:我真的不知道如何解決這樣的練習。有人可以回答這個問題嗎?我到處搜索,但沒有類似的。 我想了解它的心態。 請有人可以幫忙。
K = 11
米 = 17
R1
GROUP BY R.A6
表示您正在查看兩個組(0 或 1)。
HAVING SUM(R.A3)>2
表示您只想要該組中 R.A3 的總和大於 2 的組。
因此,您只查看 A6 = 1 的行。
d = COUNT(R.A4)
= 3(A6 = 1 的行數)
e = 2+SUM(R.A5)
= 2 + M
R2
GROUP BY R.A2
表示您正在查看兩個組(0 或 1)。
HAVING SUM(R.A1)<3
表示您只想要組內 R.A1 的總和小於 3 的組。
因此,您只查看 A2 = 0 的行。d = SUM(R.A4)
= 1 + K
e = COUNT(R.A5
= 3(A2 = 0 的行數)
R3
聯合只是將來自 R2 的行附加到來自 R1 的行。
所以,
SELECT SUM(d), SUM(e)
FROM R3
...產生 4+K 和 5+M。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.