簡體   English   中英

錯誤:select語句中的SQL語法有錯誤

[英]Error: You have an error in your SQL syntax in select statement

我試圖僅在o.status_id等於4或5的情況下獲取信息,但出現此錯誤

Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the 
right syntax to use near 'INNER JOIN order_items oi ON i.id = oi.item_id INNER JOIN orders o ON o.id =' at line 14 

這是我的SQL語句

$sql = '
SELECT 
    i.*, 
    o.*, 
    oi.*,
    u.*, 
    YEAR(o.sold_date) sold_date_Y4,
    MONTH(o.sold_date) sold_date_M4


FROM items i

WHERE o.status_id = 4 AND o.status_id = 5

INNER JOIN order_items oi ON i.id = oi.item_id
INNER JOIN orders o ON o.id = oi.order_id
INNER JOIN users u ON u.id = o.user_id
GROUP BY YEAR(o.sold_date), MONTH(o.sold_date), u.name, i.item
ORDER BY YEAR(o.sold_date), MONTH(o.sold_date), u.name, i.item

';

從我可以看到我的MySQL版本是5.7.23

問題是您在所有INNER JOIN之前都已使用WHERE

$sql = '
SELECT 
    i.*, 
    o.*, 
    oi.*,
    u.*, 
    YEAR(o.sold_date) sold_date_Y4,
    MONTH(o.sold_date) sold_date_M4


FROM items i

INNER JOIN order_items oi ON i.id = oi.item_id
INNER JOIN orders o ON o.id = oi.order_id
INNER JOIN users u ON u.id = o.user_id

WHERE o.status_id = 4 AND o.status_id = 5

GROUP BY YEAR(o.sold_date), MONTH(o.sold_date), u.name, i.item
ORDER BY YEAR(o.sold_date), MONTH(o.sold_date), u.name, i.item

';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM