我有這張桌子
| ID | 電話號碼 | 電話名稱 | 積極的 | 地位 |
|---|---|---|---|---|
| 1 | 1 | 一種 | 1 | 1 |
| 2 | 1 | b | 0 | 2 |
| 3 | 2 | C | 1 | 1 |
| 4 | 2 | d | 1 | 1 |
| 5 | 2 | e | 0 | 3 |
| 6 | 3 | F | 1 | 1 |
| 7 | 3 | G | 1 | 1 |
| 8 | 3 | H | 1 | 1 |
| 9 | 4 | 一世 | 0 | 4 |
| 10 | 4 | j | 1 | 1 |
并且想進行一個查詢,給出如下所示的結果。我想獲取Status = 1 的所有行。我還想計算 PhoneID 的總數,并在查詢中將其設為Quantity列。
| ID | 電話號碼 | 電話名稱 | 積極的 | 地位 | 數量 |
|---|---|---|---|---|---|
| 1 | 1 | 一種 | 1 | 1 | 2 |
| 3 | 2 | C | 1 | 1 | 3 |
| 4 | 2 | d | 1 | 1 | 3 |
| 6 | 3 | F | 1 | 1 | 3 |
| 7 | 3 | G | 1 | 1 | 3 |
| 8 | 3 | H | 1 | 1 | 3 |
| 10 | 4 | j | 1 | 1 | 2 |
到目前為止,我已經嘗試了一個查詢,但它沒有顯示正確的結果。
SELECT ID, PhoneID, PhoneName, Active, Status, (SELECT Count(PhoneID) FROM Phones)
FROM Phones
WHERE Status = 1
uj5u.com熱心網友回復:
您可以使用回傳每個 PhoneID 計數的子查詢來執行此操作:
SELECT t.ID, t.PhoneID, t.PhoneName, t.Active, t.Status, q.[Quantity]
FROM Phones as t
inner join
(
select PhoneID, COUNT(PhoneID) as [Quantity]
from Phones
group by PhoneID
) as q
on q.[PhoneID] = t.[PhoneID]
WHERE t.Status = 1
uj5u.com熱心網友回復:
您需要關聯您的子查詢,請嘗試:
SELECT ID, PhoneID, PhoneName, Active, Status,
(SELECT Count(*) FROM Phones p2 WHERE p2.PhoneId = p.PhoneId) Quantity
FROM Phones p
WHERE Status = 1;
uj5u.com熱心網友回復:
SELECT Count(PhoneID) FROM Phones沒有 WHERE 子句將其限制為您想要的狀態。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/474602.html
下一篇:查找不重復的列值組合
