簡體   English   中英

帶有變量的表中的值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM