0

データベースを検索して、2012 年、2013 年など、特定の年にのみ発生した会場の結果を見つけようとしています。

問題: 「会場の日付」は UNIX 時間です。そして今、検索を適切にフォーマットする方法を理解するのに問題があります。これが私が持っているものですが、クエリはまだすべての会場を引っ張っています。

$s = $modx->newQuery('Venues');
$s->where(array(strftime('%Y','Venues.venue_date') => '2012'));
$shops = $modx->getCollection('Venues',$s);

私がやろうとしていることは可能ですか?前もって感謝します!

解決

2つの答えのおかげで、正しい軌道に乗ることができました。このリンクを確認しましたhttp://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.htmlこれは本質的に私にとって金鉱です:)そして、以下は単純化されたコードです...

$s->where('Year(from_unixtime(Venues.venue_date))=2013');

繰り返しますが、うまくいけば、人々はこれが将来役立つと思うでしょう.

4

2 に答える 2

1

これはどうですか?FROM_UNIXTIME('Venues.venue_date', '%Y')

Mysql - UNIX タイムスタンプから年を選択する

于 2013-11-08T01:10:17.457 に答える