2011-02-08 15 views
0

ことで、私はこれをしようとしている:MYSQLグループ化し、受注

SELECT id, content, vote_up, vote_down, timestamp FROM posts ORDER BY vote_up DESC GROUP BY MONTH(timestamp) 

誰もがこれが動作しwouldntの理由を見ることができ、私のタイムスタンプ列は、タイプTIMESTAMPである

しかし何も出てエコーされません!

答えて

1

こんにちは、私は100%SHUREないですが、この方法を試してみてください。

SELECT id, content, vote_up, vote_down, MONTH(timestamp) as themonth FROM posts ORDER BY vote_up DESC GROUP BY themonth 
+0

Hmmm、それはうまくいくように見えましたが、そうではありませんでした。( – benhowdle89

+0

PHPmyAdminで実行する - SQLの構文でエラーが発生する – benhowdle89

+0

「タイムスタンプ」... Marc Bが説明したように...そのフィールドの名前を変更する必要がある – FeRtoll

0

timestampは、MySQLの予約語なので、最も可能性の高いクエリでも何を見ていないため、実行されていません。これは、コードにエラー処理がないことを意味します。

フィールドの名前を別の名前に変更するか、timestampという単語をバッククォート( `)で囲むか、MySQLで予約語をエスケープすることで解決します。

次に、クエリに失敗したようなものをキャプチャできるように、エラー処理をコードに追加します。