web-dev-qa-db-ja.com

MySQLの日付/時刻から月のみを取得する方法は?

MySQLサーバーに、作成したコンテンツの日付を含む行があります。
例:2013-03-17 02:53:47

今のところ、私は使用しています:

$date = $fetch[thedaterownamegoeshere];

<?php echo $date; ?>

しかし、日付の完全なコンテンツを取得する代わりに(2013-03-17 02:53:47)、月のみを取得したいのですが、この例では、結果として「03」という数字が必要です。どうやってやるの?

7
bazaglia

提案#1

MONTH() 関数を使用できます

_mysql> select MONTH(NOW());
+--------------+
| MONTH(NOW()) |
+--------------+
|            3 |
+--------------+
1 row in set (0.03 sec)

mysql> select MONTH('2013-03-17 02:53:47');
+------------------------------+
| MONTH('2013-03-17 02:53:47') |
+------------------------------+
|                            3 |
+------------------------------+
1 row in set (0.04 sec)

mysql>
_

実行しているSQLコマンドにMONTH関数を挿入する必要があります。

提案#2

PHP日付関数 を試すこともできます

_$month = date("m",$date)
_

また、DATE_FORMAT(date_column, '%c')は、結果として_'3'_を取得し、DATE_FORMAT(date_column, '%m')は、結果として_'03'_を取得します。

10
RolandoMySQLDBA

これはあなたのために働くでしょう。

 $date = date('M', strtotime($fetch['thedaterownamegoeshere']));
0
shekhar jadhav