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

開始日と終了日を含む日付範囲の日数をカウントするMySQLクエリ


日付範囲の日数をカウントするには、DATEDIFF()を使用して日付の違いを見つける必要があります。

最初にテーブルを作成しましょう:

mysql> create table DemoTable730 (
   StartDate date,
   EndDate date
);
Query OK, 0 rows affected (0.45 sec)

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します:

mysql> insert into DemoTable730 values('2019-01-21','2019-07-21');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable730 values('2018-10-11','2018-12-31');
Query OK, 1 row affected (0.46 sec)
mysql> insert into DemoTable730 values('2016-01-01','2016-12-31');
Query OK, 1 row affected (0.14 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示します:

mysql> select *from DemoTable730;

これにより、次の出力が生成されます-

+------------+------------+
| StartDate  | EndDate    |
+------------+------------+
| 2019-01-21 | 2019-07-21 |
| 2018-10-11 | 2018-12-31 |
| 2016-01-01 | 2016-12-31 |
+------------+------------+
3 rows in set (0.00 sec)

以下は、日付範囲の日数をカウントするためのクエリです。

mysql> select ABS(DATEDIFF(StartDate,EndDate)) AS Days from DemoTable730;

これにより、次の出力が生成されます-

+------+
| Days |
+------+
| 181  |
| 81   |
| 365  |
+------+
3 rows in set (0.00 sec)

  1. 曜日を含む日付レコードを減算し、レコードを含む曜日を表示するMySQLクエリ

    これには、DATE_FORMAT()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1820      (      AdmissionDate varchar(20)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1820 values('20/10/2019

  2. 開始日と終了日の範囲からの合計営業日数を計算するPython関数を記述します

    日付のdate_rangeがあり、合計営業日数の結果が次のようになっていると仮定します。 Dates are: DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-06',                '2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10'