2016-08-19 3 views
-1

completed_date(2016-05-27 04:08:53)という名前のdatetime列を持つテーブルがあります。今月ののデータをすべて無視して選択したいと思います。このような何か:datetime列から月を選択

$query = mysqli_query($dbc, " select * from eob_posting where 
    completed_date=DATE(NOW())"); 

ように句が considereのみ日付どのように私は時間を削除することができますか?

+0

月が必要な場合は、なぜあなたは 'DATE()'を使用していますか? – Barmar

答えて

1

日時はまた、基本的には文字列であることを

注:-)他の回答よりもさらに短いです形式は「2016-01-01 12:34:56」なので、ちょうどできる:

> SELECT LEFT(NOW(), 7) as YearAndMonth; 
YearAndMonth 
------------ 
2016-08 

あなたの質問は簡単に次のように表現されます:

SELECT * FROM eob_posting 
WHERE LEFT(completed_date, 7) = LEFT(NOW(), 7) 

ハッピーハンティング!

2

現在の月を取得するには、使用する必要がありますYEAR()MONTH()

WHERE YEAR(completed_date) = YEAR(NOW()) AND MONTH(completed_date) = MONTH(NOW()) 
+0

今月? –

+0

彼の質問はそれを混乱させています。 – Barmar

+0

これは、現在の月だけではなく、今月完了した行を返します。 – Mureinik

0
select * from eob_posting 
where completed_date >= CAST(DATE_FORMAT(curdate() ,'%Y-%m-01') as DATE) 
関連する問題