2012-05-10 51 views
1

下面的SQL代碼會返回,其中所有選擇的都是NULL,event_size是0.我的表正確地設置爲以下條件。我在這裏做錯了什麼?感謝您的幫助SQL Statement Issue

SELECT table_one.event_id AS event_id, table_one.event_name AS event_name, table_one.event_address AS event_address, COUNT(table_two.user_id) AS event_size 
FROM table_one 
JOIN table_two 
ON table_one.event_id = table_two.event_id 
WHERE (
     table_one.event_start_date = '5/10/2012' 
    OR table_one.event_mid_date = '5/10/2012' 
    OR table_one.event_end_date = '5/10/2012' 
) 
ORDER BY event_size DESC 
+5

沒有關係,但你可以做你的WHERE這樣的:'WHERE '2012/5/10' IN(table_one.event_start_date,table_one.event_mid_date,table_one.event_end_date' – zimdanen

+2

** **什麼數據庫系統,以及哪個版本SQL **只是結構化查詢語言(Structured Query Language) - 許多數據庫系統使用的語言 - SQL是** NOT **數據庫產品...這類東西通常是特定於供應商的 - 所以我們確實需要知道你正在使用什麼數據庫系統...... –

+0

目前還不清楚你想要完成的是什麼,你爲什麼要加入到表2中?爲什麼當你可以使用count(0)'來計數ID?通過? –

回答

0

嘗試by子句添加組:

group by table_one.event_id, table_one.event_name, table_one.event_address 

這應該做你想要什麼。

-1

始終使用通用日期格式之一,而不是區域性日期格式。

YYYYMMDD或YYYY-MM-DD

+0

這是很好的知道,但它不可能是問題。如果字符串以這種方式存儲在我的數據庫中,我的日期可能是'今天'或'明天'。 –

+1

我已經爲問題添加了評論。我看到你對別人的迴應後。像他們一樣,我認爲event_start_date是一個日期... –