2013-11-22 37 views
0

我的問題是如何在9月1日以後找到我的藝術家拍攝的所有曲目被其輸入到數據庫中的我的曲目標題(即具有entrydates),2003年MySQL的簡化連接,日期函數

我的藝術家,曲目和標題與特定ID相關。這些表如下:

​​

我已經制定了以下查詢:後

SELECT tracktitle 
FROM tracks tr 
     JOIN titles ti 
     ON ti.titleid = tr.titleid 
     JOIN artists ar 
     ON ar.artistid = ti.artistid 
WHERE Year(ar.entrydate) >= 2003 
     AND Month(ar.entrydate) >= 9 
     AND Day(ar.entrydate) >= 1; 

有沒有發現,記錄這些曲目標題的更有效的方式(即,有入學日期) 2003年9月1日?

+0

'entrydate'的數據類型是什麼? datetime,varchar? –

+0

記錄類似於(但不完全)到2010年1月30日的日期,並且可能爲空,即NULL或空 – user2948897

回答

2

ar.entrydate >= "2003-09-01"就足夠了,如果您的字段的數據類型是日期。如果它的時間戳字段是date(ar.entrydate)>="2003-09-01"

+0

是的,這種比較是我正在尋找的。另外,你認爲查詢回答我的問題是合乎邏輯的嗎? – user2948897

1

找到在2003年9月1日之後輸入到數據庫(即有輸入日期)的藝術家記錄的所有曲目的trackTitles。使用一個或多個連接; 做不是使用任何子查詢。