【发布时间】:2019-01-31 13:32:51
【问题描述】:
美好的一天!
我有这个 SQL,但不能用于托管。在局域网上一切都很好。我找不到问题所在。 Laravel 项目 SQL:
$data = DB::select('
SELECT
DATE(o.created_at) as day,
count(id) as count_all,
count((SELECT id WHERE status=3)) as success,
count((SELECT id WHERE status=5)) as return_order,
count((SELECT id WHERE status=0 or status=4 or status=8)) as call_order,
count((SELECT id WHERE status=7 or status=6 or status=1)) as otkaz,
count((SELECT id WHERE status=2)) as nado_dostavit,
SUM((SELECT offer_price)) as all_price,
SUM((SELECT offer_price WHERE status=3)) as success_price,
SUM((SELECT offer_price WHERE status=5)) as return_order_price,
SUM((SELECT offer_price WHERE status=0 or status=4 or status=8)) as call_order_price,
SUM((SELECT offer_price WHERE status=7 or status=6 or status=1)) as otkaz_price,
SUM((SELECT offer_price WHERE status=2 )) as nado_dostavit_price,
(SELECT sum(s.visitors) FROM statistics as s WHERE s.offer_id='.$user_id.') as visitors
FROM
orders as o
WHERE
offer_id='.$user_id.'
AND created_at between "'.$mother_later.'" AND "'.$today.'"
GROUP BY day
ORDER BY day desc
limit 30
');
错误:
(2/2) 查询异常
SQLSTATE[42000]:语法错误或访问冲突:1064 你有一个 SQL 语法错误;检查与您对应的手册 MariaDB 服务器版本,用于在 'WHERE 附近使用正确的语法 status=3)) 成功,
【问题讨论】:
-
SELECTs 通常包含一个 FROM 子句,因此“一切正常”的概念似乎值得怀疑。