簡體   English   中英

檢查 mysql 查詢是否提供了問題的最佳解決方案

[英]Checking if mysql query provides the best solution to the question

列出在代碼為 1 且每小時工資為 40 歐元的 EmployeeType 中工作的所有員工的姓名和地址。

我想知道這是否是從上述問題中檢索信息的最佳方式

SELECT e.EmployeeName , e.EmployeeAddress
FROM Employee e JOIN EmployeeType et ON e.EmployeeType = et.EmployeeType
HAVING e.EmployeeCode = (1) AND et.TotalPay = (40);

我不會在此查詢中使用“HAVING”,我更喜歡 WHERE 條件或在加入時添加更多參數。 您可以在此LINK上閱讀有關 HAVING 的信息,Having 與 WHERE 條件略有不同,因為它在查詢結果后應用。

第一個具有簡單 WHERE 條件的解決方案

SELECT e.EmployeeName , e.EmployeeAddress
FROM Employee e 
INNER JOIN EmployeeType et ON e.EmployeeType = et.EmployeeType
WHERE e.EmployeeCode = '1' AND et.TotalPay = '40';

第二種解決方案在加入時添加更多參數

SELECT e.EmployeeName , e.EmployeeAddress
FROM Employee e 
INNER JOIN EmployeeType et ON (e.EmployeeType = et.EmployeeType AND et.TotalPay = '40')
WHERE e.EmployeeCode = '1' ;

暫無
暫無

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

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