2011-12-28 86 views
1

我有一個帶有投票功能的圖片庫,我試圖從數據庫中顯示每張圖片的投票數。從投票表Echo SQL查詢

我有一個投票表具有以下...

vote_id │ user_id │ session_id │ ip │ created_date │ status 

我試圖讓每個圖像顯示(每頁幾個圖像)的票數,但每個IP只能投1中和僅在上週(週一至週日)。

當談到這種事情時,我不是一個天才,但這是我迄今爲止能夠獲得SQL結果的能力。我已經變得有點粘努力落實到PHP ...

SELECT COUNT(DISTINCT ip) AS Votes FROM 'vote'(我知道它的基本的,但你去)

+2

如果你想拿到票爲每個圖像的數量,其中存儲在image_id? – cppcoder

+0

圖像ID存儲在一張表「圖像」 –

+0

所以你怎麼知道哪張投票是哪個圖像? –

回答

2

這裏是:)
SELECT COUNT(DISTINCT ip) AS Votes, WEEK(created_date) AS week_num FROM 'vote'
group by WEEK(created_date)
order by week_num DESC

2

你要組數據:

group by ip, week(created_date)

+0

我有'SELECT COUNT(DISTINCT ip)AS Votes,(SELECT WEEK(created_date)AS week_num FROM tcs_vote WHERE week_num = $ weekNumber AND week_num =('$ weekNumber'));''但它提出了錯誤代碼:1054.'字段列表'中的未知列'ip'? –

+0

檢查你的括號:... AS投票,(選擇... –

0

你應該有這樣的投票表image_id列。然後您可以通過此查詢完成此操作。

SELECT image_id, COUNT(DISTINCT ip) AS Votes FROM vote GROUP BY image_id