Mysql行计算sql_mysql – SQL计算所有行而不是计算单个行

我有一个SQL语句,它从数据库中请求数据.

SELECT `ID`, `To`, `Poster`, `Content`, `Time`, ifnull(`Aura`,0) as `Aura` FROM (

SELECT * FROM (

SELECT DISTINCT * FROM messages m

INNER JOIN

(

SELECT Friend2 as Friend FROM friends WHERE Friend1 = '1'

UNION ALL

SELECT Friend1 as Friend FROM friends WHERE Friend2 = '1'

) friends ON m.Poster = friends.`Friend`

UNION ALL SELECT DISTINCT *, '1' FROM messages where `Poster`='1'

) var

LEFT JOIN

(

select `ID` as `AuraID`, `Status` as `AuraStatus`, count(*) as `Aura`

from messages_aura

) aura ON (var.Poster = aura.AuraID AND var.ID = aura.AuraStatus)

) final

GROUP BY `ID`, `Poster`

ORDER BY `Time` DESC LIMIT 10

这是我的messages_aura表格布局.它显示ID,状态和用户ID.

以下是上述声明的输出.

(上面屏幕截图中的ID是指下面的海报,上面屏幕截图中的状态是指下面的ID)

该声明应该给最下面的Aura计数为1,顶行的Aura计数为2.出错了什么?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值