0
我有3個表,User, Payment, Type Of Payment
像:計數通過連接表返回的項目不同數量
CREATE TABLE User (
`userID` INTEGER PRIMARY KEY AUTOINCREMENT,
`userName` varchar(4)
);
INSERT INTO User values
(1, 'Tom'),
(2, 'Kate'),
(3, 'Karla');
CREATE TABLE typePayment (
typeID INTEGER PRIMARY KEY AUTOINCREMENT,
namePayment VARCHAR(6) NOT NULL
);
INSERT INTO typePayment values
(1,'Cash'),
(2,'Check'),
(3,'Both');
CREATE TABLE Payment (
`paymentID` INTEGER PRIMARY KEY AUTOINCREMENT,
`idUser` int,
`idTypePayment` int,
`info` varchar(14)
);
INSERT INTO Payment VALUES
(1, 1, 1, 'ball'),
(2, 1, 1, 'book'),
(3, 1, 2, 'book'),
(4, 2, 1, 'book');
當聯接表進行磋商,以人支付的款項我
userID userName namePayment info
1 Tom Cash ball
1 Tom Cash book
1 Tom Check book
2 Kate Cash book
通過以下查詢
SELECT u.userID ,u.userName, te.namePayment , e.info
FROM User u
INNER JOIN Payment e
ON u.userID = e.idUser
INNER JOIN typePayment te
ON e.idTypePayment = te.typeID
order by u.userID;
但是我想要數一下總式支付做喜歡每個人:
userID userName namePayment info noCash noCheck noBoth
1 Tom Cash ball 2 1 0
1 Tom Cash book 2 1 0
1 Tom Check book 2 1 0
2 Kate Cash book 1 0 0
怎麼辦呢? (請看看fiddle,我正在使用SQLite)
什麼是'noBoth'? –