MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで来月の最初と最後の日付を取得しますか?


MySQLのdate_add()関数を使用して、来月の最初と最後の日付を取得できます。

構文は次のとおりです-

select
date_sub(
   last_day(
      date_add(now(), interval anyIntervalTime)
   ),
   interval day(
      last_day(
         date_add(now(), interval anyIntervalTime)
      )
   )-1 DAY
) as anyVariableName,
last_day (
   date_add(now(), anyIntervalTime)
)
as anyVariableName;

上記の構文を実装して、date_add()関数でinterval1monthを使用して翌月の最初と最後の日付を取得します。クエリは次のとおりです。

mysql> select
-> date_sub(
->    last_day(
->       date_add(now(), interval 1 month)
->    ),
->    interval day(
->       last_day(
->          date_add(now(), interval 1 month)
->       )
->    )-1 DAY
-> ) as firstDayOfNextMonth,
->
-> last_day
-> (
->    date_add(now(), interval 1 month)
-> )
-> as lastDayOfNextMonth
-> ;

以下は、翌月の最初と最後の日を表示する出力です。

+---------------------+--------------------+
| firstDayOfNextMonth | lastDayOfNextMonth |
+---------------------+--------------------+
| 2019-02-01 | 2019-02-28 |
+---------------------+--------------------+
1 row in set (0.00 sec)

  1. MySQLの日付レコードから月の最初の日と最後の日を表示するにはどうすればよいですか?

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> DueDate date    -> ); Query OK, 0 rows affected (0.73 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('2019-01-11'); Query OK, 1 row affected (0.08 sec) mysql

  2. MySQLの最初と最後以外のすべての行を取得します

    最初と最後以外のすべての行を取得するには、MIN()およびMAX()とともにサブクエリを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1917    (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentCode int,    StudentMarks int    ); Query OK, 0 rows affected (0.00 sec) 挿入コマ