【发布时间】:2015-09-11 19:40:41
【问题描述】:
我有一个这样的查询:
SELECT SUM(price) AS GINTO,
(
(SELECT COUNT(price)*9.99 FROM sms_logs WHERE price = '200000')+
(SELECT COUNT(price)*3.99 FROM sms_logs WHERE price = '60000')+
(SELECT COUNT(price)*1.99 FROM sms_logs WHERE price = '24000')+
(SELECT COUNT(price)*0.99 FROM sms_logs WHERE price = '11000')
) AS USD,
DATE_FORMAT(DATE,'%Y-%m-%d') AS DATE FROM sms_logs
WHERE DATE >='2015-03-20' AND DATE <= '2015-04-30'
GROUP BY DATE_FORMAT(DATE,'%Y-%m-%d')
我想将数据显示为:
GINTO || USD || DATE
2222000 || 200 || 2015-03-23
3366000 || 300 || 2015-03-24
11000 || 10 || 2015-03-25
但该查询的结果:
GINTO || USD || DATE
2222000 || 284.65|| 2015-03-23
3366000 || 284.65|| 2015-03-24
11000 || 284.65|| 2015-03-25
使用 USD 列,它显示所有记录的摘要。为什么?
【问题讨论】:
-
您需要提供一些样本数据和预期结果集的逻辑,最好是sqlfiddle.com中的样本数据
标签: php mysql sql select subquery