s.staffid=sr.userld上的查询表达式sri.invoiceno=sri.invoiceno internal join staff s中存在语法错误(缺少运算符)

sauutmhj  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(388)
"SELECT SalesReturnId, ReturnDate, sr.InvoiceNo, (lastname & ', ' & firstname & ', ' &  MI) as StaffName, TotalAmount, SUM(sri.Quantity) as TotalQuantity FROM SalesReturn sr INNER JOIN SalesReturnItem sri ON sr.InvoiceNo = sri.InvoiceNo INNER JOIN Staff s ON s.StaffId = sr.userID WHERE ReturnDate  BETWEEN '" + startDate.ToString("yyyy-MM-dd") + "' AND '" + endDate.ToString("yyyy-MM-dd") + "' AND sr.InvoiceNo LIKE '%" + txtName.Text + "%' GROUP BY sr.InvoiceNo ORDER BY ReturnDate, sr.InvoiceNo DESC";

当我运行该查询时,不断出现以下错误:
s.staffid=sr.userld上的查询表达式sri.invoiceno=sri.invoiceno inner join staff s中存在语法错误(缺少运算符)

mitkmikd

mitkmikd1#

在access中,如果有多个联接,则需要括号:

SELECT SalesReturnId, ReturnDate, sr.InvoiceNo, 
(lastname & ', ' & firstname & ', ' &  MI) as StaffName,
TotalAmount, SUM(sri.Quantity) as TotalQuantity 
FROM (SalesReturn sr 
INNER JOIN SalesReturnItem sri ON sr.InvoiceNo = sri.InvoiceNo )
INNER JOIN Staff s ON s.StaffId = sr.userID 
WHERE ReturnDate  BETWEEN '" + startDate.ToString("yyyy-MM-dd") + "' AND '" + endDate.ToString("yyyy-MM-dd") + "' 
AND sr.InvoiceNo LIKE '%" + txtName.Text + "%' 
GROUP BY sr.InvoiceNo 
ORDER BY ReturnDate, sr.InvoiceNo DESC;

相关问题