簡體   English   中英

為什么我在這個查詢中收到 mysql 錯誤

[英]why i am getting mysql error in this query

執行以下查詢后出現 mysql 錯誤

select s1.Student_Id,
       s1.Total_Paid_Orders
from ((SELECT s.Student_Id,
              COUNT(o.Order_Id) as Total_Paid_Orders 
       FROM `orders` o 
       inner join students s on s.Student_Id=o.Student_Id
       WHERE o.Entry_Date<'2019-09-01 00:00:00'
       group by s.Student_Id
      ) s1
      left join (SELECT s23.Student_Id 
                 FROM `orders` o23 
                 inner join students s23 on s23.Student_Id=o23.Student_Id
                 WHERE o23.Entry_Date>='2019-09-01 00:00:00' 
                 group by s23.Student_Id 
                ) s2 on s1.Student_Id=s2.Student_Id 
      where s1.Student_Id is null
);

mysql錯誤:

MySQL 說:文檔 #1064 - 你的 SQL 語法有錯誤; 檢查與您的 MySQL 服務器版本相對應的手冊,以在第 1 行的 'where s1.Student_Id is null) LIMIT 0, 25' 附近使用正確的語法

請幫我解決這個問題。

我想問題出在無關的括號上。 嘗試以下查詢 -

SELECT s1.Student_Id,
  s1.Total_Paid_Orders
FROM
  (SELECT s.Student_Id,
    COUNT(o.Order_Id) AS Total_Paid_Orders
  FROM `orders` o
  INNER JOIN students s
  ON s.Student_Id   =o.Student_Id
  WHERE o.Entry_Date<'2019-09-01 00:00:00'
  GROUP BY s.Student_Id
  ) s1
LEFT JOIN
  (SELECT s23.Student_Id
  FROM `orders` o23
  INNER JOIN students s23
  ON s23.Student_Id    =o23.Student_Id
  WHERE o23.Entry_Date>='2019-09-01 00:00:00'
  GROUP BY s23.Student_Id
  ) s2 ON s1.Student_Id=s2.Student_Id
WHERE s1.Student_Id   IS NULL;

暫無
暫無

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

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