我想把所有的 coins
从 m_z_analytics
什么时候 site
编号与相同 id
从 m_b_browsing_live
(见下面的结果)。
table:
m_z_analytics
id|site_id|coins|
1| 1| 0.01|
2| 2| 0.1|
3| 1| 0.08|
4| 2| 0.1|
3| 3| 0.2|
m_b_browsing_live
id| cpc|
1|0.09|
2| 0.1|
3| 0.5|
最终结果应为:0.38(0.09+0.1+0.09+0.1)
我已经试过了:
SELECT SUM(a.coins) AS money FROM m_z_analytics a
LEFT JOIN m_b_browsing_live b ON b.id=a.site_id
WHERE CONCAT(',', `a.site_id`, ',') REGEXP ',(1|2),'
1条答案
按热度按时间mm5n2pyu1#
仅当您选择带有
site_id = 1
或者site_id = 2
,这可能就是你使用REGEX
那里的东西。你的问题意味着你没有任何限制
site_id
只有1或2意味着只要site_id
正在匹配id
应计算列总和,因此正确答案为0.49。不管怎样,我已经尽了最大的努力来解读你的意图,所以我给你两个答案:
您的示例查询(错误结果为0.29)将正确编写为:
正确回答您的问题(结果=0.49)将是:
甚至没有
LEFT JOIN
语法相当于:sql fiddle示例