2011-12-28 12 views
1

私は投票機能を持つ画像ギャラリーを持っており、データベースから各画像の投票数を表示しようとしています。投票テーブルのSQLクエリをエコーする

は私が各画像は(ページごとに複数の画像)を表示するための投票数を取得しようとしています

vote_id │ user_id │ session_id │ ip │ created_date │ status 

...次で投票テーブルを持っていますが、IPあたりわずか1票と先週(Mon to Sun)の間にのみ。

私はそれがこの種のことに関しては天才ではありませんが、これはSQLで結果を得るためにこれまでにできたことです。私はあなたがグループのデータに持って

+2

あなたはimage_idはが保存されている各画像のための投票数を取得したい場合は? – cppcoder

+0

イメージIDはテーブル "image"に格納されます image_id - image_name - image_caption - image_tag - image_url - mime - width - height - size - user_id - created_date –

+0

どのような投票がどのようなイメージであったのですか? –

答えて

2
ここ

はあなたが投票テーブルにimage_idは同様の列を持つ必要があります:)
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

(私はその基本を知っているが、そこに行く)... PHPにそれを実装しようとしているビットが立ち往生

SELECT COUNT(DISTINCT ip) AS Votes FROM 'vote'を取得してきた:

group by ip, week(created_date)

+0

(tcs_vote FROM week_num AS SELECT WEEK(created_date)をweek_num = $ weekNumber AND week_num =( 'week_num = $ week_numをweek_num によって順序$ weekNumber'));'それはエラーコード:1054で出てくる: 'フィールドリスト'の 'ip'が不明な列? –

+0

括弧をチェック:... AS投票、(選択... –

0

です。次に、このクエリによってこれを達成できます。

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