0
我目前有這個問題,我想弄清楚如何解決在查詢的最後四(4)年部分加入。任何幫助,將不勝感激。謝謝不能弄清楚如何顯示工作年數(包括年數少於4)
問題: 列出所有的醫生,這是目前活躍的診所醫生,這是女性和加入過去四(4)年。顯示醫生的名字和他們的主管的名字。
當前查詢:
SELECT CONCAT(d.given, d.surname) AS Doctor_Name,
CONCAT(s.given, s.surname) AS Supervisor_Name
FROM doctor d, doctor s
WHERE s.doctorid = d.supervisorid
AND d.resigned IS NULL
AND d.sex = 'f'
AND YEAR(d.joined) > 2013
選項2
SELECT CONCAT(doc.given,' ',doc.surname) AS Doctor_Name,
CONCAT(sup.given,' ',sup.surname) AS Supervisor_Name,
doc.sex,
doc.joined
FROM doctor doc, doctor sup
WHERE sup.doctorid = doc.supervisorid
AND doc.resigned IS NULL
AND doc.sex = 'F'
AND YEAR (doc.joined) >= YEAR(CURRENT_DATE - INTERVAL 4 YEAR)
ORDER BY doc.joined
這些查詢以何種方式提供不正確的結果?爲什麼你刪除了SQL上的代碼格式? – Jerrad
'年(Getdate()) - YEAR(d.joined)> = 4' –
d.joined> = Dateadd(y,-4,d.joined),但是這會給你一天的準確性而不是年份準確性如上。將取決於你需要什麼。 – ThatChris