我有一个帐户表,每个帐户都有一个唯一的ID。然后,我有一个事务表,每个事务表都有唯一的ID。交易表的每一行都有一个帐户ID,以显示其使用的特定帐户。因此,在“交易”表中可以有多行具有相同的帐户ID,每个行都指向同一个帐户,以表明该帐户有多个交易。
每个帐户可以进行任意数量的(0-n)个交易。
我将事务处理表与“帐户”表连接好,输出显示每个事务处理一行(因此某些帐号有多个行),或者,如果没有事务处理,则在事务处理字段中显示null :
|Account ID|Account Name|Transaction ID|Transaction Name|
---------------------------------------------------------
|acc1 |Account 1 |tran1 |Transaction 1 |
|acc1 |Account 1 |tran2 |Transaction 2 |
|acc1 |Account 1 |tran3 |Transaction 3 |
|acc2 |Account 2 |tran4 |Transaction 4 |
|acc3 |Account 3 |null |null |
|acc4 |Account 4 |tran5 |Transaction 5 |
|acc4 |Account 4 |tran6 |Transaction 6 |
但是我想要的是对交易数量进行计数-我不在乎与每笔交易相关的任何信息;我只想获取每个帐户的交易数:
|Account ID|Account Name|Number of Transactions|
------------------------------------------------
|acc1 |Account 1 | 3 |
|acc2 |Account 2 | 1 |
|acc3 |Account 3 | 0 |
|acc4 |Account 4 | 2 |
如何获得此计数?
FWIW-Microsoft SQL Server
答案 0 :(得分:3)
<style>
.tooltip-inner { max-width: 200px; }
</style>
<button type="button"
data-container="body"
data-toggle="tooltip"
tooltip="Tooltip on leftaaaaaaaaaaaaaXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq"
tooltip-placement="left" >
Tooltip on left111
</button>
答案 1 :(得分:1)
假设您的表结构是
create table tran (accid varchar, accname varchar, tranid varchar, tranname varchar)
您可以使用group by子句简单地实现此目的
select accid,accname, count(tranid) from tran group by accid