【发布时间】:2015-03-10 03:39:47
【问题描述】:
您好,我对如何执行此查询感到困惑。
我有桌子:
transactiondetails
-> TransactionDetailsID
-> TerminalID
-> SiteID
-> TransactionType
-> Amount
terminals
-> TerminalID
-> TerminalName
-> TerminalType
现在,在 table terminal.TerminalType 上,值是 0 或 1。 在我的 transactiondetails 中,我需要在表中的特定 SiteID 中找到终端总数。TerminalType = 1 transactiondetails 所以我的查询是
SELECT
CASE
WHEN b.TerminalType IN (1) then COUNT(a.TerminalID)
ELSE 0 END AS TotalGenesis, a.SiteID
FROM npos.transactiondetails a
LEFT JOIN npos.terminals b ON a.TerminalID = b.TerminalID
WHERE a.SiteID = 167;
但即使我的交易详情中有 TerminalType = 1,TotalGenesis 的结果也为零。
感谢您的帮助。
【问题讨论】:
-
在MySQL中你可以写
COUNT (TerminalType = 1)。