0

次のクエリは、「9 月」の月の結果を返しますが、特定の月「8 月」の結果を取得する必要があるため、正しい結果を返しませんでした。

クエリに何か問題がありますか?

SELECT * 
FROM table 
WHERE  YEAR(FROM_UNIXTIME(UNIX_date)) = '2012'  AND 
       MONTH(FROM_UNIXTIME(UNIX_date)) = '08' 
order by UNIX_date DESC 

編集:

返された結果は次のようなものでした:

 post_id    user_id     UNIX_date
 95319       12         1346475459
 97370        5         1346474849
 83527       25         1346474631
 83526       51         1346473357
 85929       12         1346471009
 26677       29         1346462100
 26839       12         1346432911
 85927       12         1346411636
4

2 に答える 2

0

月の先頭に を付けないでください08の代わりに試してみてください08。UNIX_date がどのように見えるかを確認できるように、返される内容の行を投稿することもできます。

参照: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_month

于 2012-09-11T09:01:43.620 に答える
0

ドキュメントhttp://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_monthに書かれているように、DAYMONTHおよびYEAR関数は整数を返すため、値 1 ~ 12 (またはゼロ) ) の場合MONTH

于 2012-09-11T09:02:28.203 に答える