MySQLで現在の日時から30日を引くにはどうすればよいですか?
現在の日時から30日を引くには、まず現在の日時に関する情報を取得してから、MySQLのnow()メソッドを使用する必要があります。 now()は現在の日時を示します。
これに使用されるメソッドは、MySQLのDATE_SUB()です。現在の日時から30日を引く構文は次のとおりです。
構文は次のとおりです-
DATE_SUB(NOW(),INTERVAL 30 DAY);
上記の構文は、最初に現在の日時を計算し、次のステップで30日を差し引きます。最初にクエリを見て、現在の日時を取得しましょう-
mysql> select now();
これが出力です-
+---------------------+ | now() | +---------------------+ | 2018-11-23 16:38:43 | +---------------------+ 1 row in set (0.00 sec)
ここで、date_sub()メソッドを使用して30日を減算してみましょう。クエリは次のとおりです-
mysql> select date_sub(now(),interval 30 day);
これは、30日を引いた後の日付を表示する出力です-
+---------------------------------+ | date_sub(now(),interval 30 day) | +---------------------------------+ | 2018-10-24 16:38:50 | +---------------------------------+ 1 row in set (0.00 sec)
結果の日付値のみを取得するには、now()の代わりにcurdate()を使用できます。これがcurdate()のデモです。
クエリは次のとおりです-
mysql> select date_sub(curdate(),interval 30 day);
以下は出力です-
+-------------------------------------+ | date_sub(curdate(),interval 30 day) | +-------------------------------------+ | 2018-10-24 | +-------------------------------------+ 1 row in set (0.00 sec)
-
MySQLで日時から日付のみを取得しますか?
DateTimeから日付のみを取得するには、日付形式指定子-を使用します %d for day %m for month %Y for year まずテーブルを作成しましょう- mysql> create table DemoTable ( AdmissionDate datetime ); Query OK, 0 rows affected (0.52 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('2019-07-21 12:34:56&
-
現在の日付から1日以上経過しているMySQLの行を選択するにはどうすればよいですか?
現在の日付から1日を超えるデータを取得するには、MySQLのINTERVALの概念を使用します。 現在の日付は次のとおりです- mysql> select curdate(); +------------+ | curdate() | +------------+ | 2019-11-29 | +------------+ 1 row in set (0.00 sec) 最初にテーブルを作成します- mysql> create table DemoTable1806 ( DueDate