0
我需要查詢幫助,無法使其正常工作。我試圖實現的是有一個選擇框顯示與特定主題相關聯的記錄數,對於某些主題它可以很好地顯示(0),當實際上有2條記錄時,我想知道是否有人可以幫我在這,你的幫助將不勝感激,請參閱下面我的實際查詢+表結構:使用多個表格和字段在列表框中顯示記錄數
SELECT theme.id_theme, theme.theme, calender.start_date,
calender.id_theme1,calender.id_theme2, calender.id_theme3, COUNT(*) AS total
FROM theme, calender
WHERE (YEAR(calender.start_date) = YEAR(CURDATE())
AND MONTH(calender.start_date) > MONTH(CURDATE()))
AND (theme.id_theme=calender.id_theme1)
OR (theme.id_theme=calender.id_theme2)
OR (theme.id_theme=calender.id_theme3)
GROUP BY theme.id_theme
ORDER BY theme.theme ASC
主題表
|---------------------|
| id_theme | theme |
|----------|----------|
| 1 | Yoga |
| 2 | Music |
| 3 | Taichi |
| 4 | Dance |
| 5 | Coaching |
|---------------------|
萬年曆錶
|---------------------------------------------------------------------------|
| id_calender | id_theme1 | id_theme2 | id_theme3 | start_date | end_date |
|-------------|-----------|-----------|-----------|------------|------------|
| 1 | 2 | 4 | | 2015-07-24 | 2015-08-02 |
| 2 | 4 | 1 | 5 | 2015-08-06 | 2015-08-22 |
| 3 | 1 | 3 | 2 | 2014-10-11 | 2015-10-28 |
|---------------------------------------------------------------------------|
LISTBOX
|----------------|
| |
| Yoga (1) |
| Music (1) |
| Taichi (0) |
| Dance (2) |
| Coaching (1) |
|----------------|
請多關照
阿列克謝您好,感謝回答,我已經添加括號,它仍然是相同的結果 –
我認爲你應該使用多對多的關聯實現許多日曆主題,你的問題將解決由加入編輯。在當前實現中,您必須從日曆表中選擇所有主題ID,然後使用where語句。 – idej