我試圖返回完全拒絕的不同發票的數量。發票可以包含多個訂單項。如果發票的某個訂單項的原因爲'無',另一個'已拒絕',那麼它不會被完全拒絕,因此不應計入。SQL Server計數查詢比較結果總數
我想要的結果是合乎邏輯地
Client | No. of Invoices Fully Rejected
-------------------------------------------
Schogotten | 1
Maiken | 2
,我相信我回到那裏的線項目總數等於其中的原因是每張發票的發票被拒絕的次數發票的數量。
這裏是SQL Fiddle
MS SQL Server 2008的架構設置:
CREATE TABLE Tmp (
id int NOT NULL,
client varchar (24) NOT NULL,
invoice varchar(5) NOT NULL,
statusid int NOT NULL,
reason varchar (24)
)
INSERT INTO Tmp (id, client, invoice, statusid, reason)
VALUES (12345, 'Schogotten', 'ABC12', -99, 'Rejected')
, (12346, 'Schogotten', 'ABC12', -99, 'None')
, (12347, 'Schogotten', 'ABC12', 10001, 'ReadyToPay')
, (12348, 'Schogotten', 'ABC11', -99, 'Rejected')
, (12349, 'Schogotten', 'ABC10', -99, 'None')
, (12350, 'Maiken', 'ABC13', -99, 'Rejected')
, (12351, 'Maiken', 'ABC14', 9006, 'ReadyToPay')
, (12351, 'Maiken', 'ABC14', -99, 'None')
, (12352, 'Maiken', 'ABC15', -99, 'Rejected');
查詢1:
SELECT Client
, COUNT(Invoice)
FROM Tmp
WHERE Reason = 'Rejected'
GROUP BY Client
| CLIENT | COLUMN_1 |
|------------|----------|
| Maiken | 2 |
| Schogotten | 2 |
您是否知道SQL小提琴在「Run SQL」按鈕上有一個「Markdown Ouptut」選項,您可以簡單地將其粘貼到上述問題中? – Tanner 2014-10-29 11:06:10
@坦納我現在。感謝您的關注。 – user1773949 2014-10-29 11:34:28