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

日付の違いを取得し、MySQLで給与を計算しますか?


給与を計算するために、月の日付(JoiningDate – EndDate)の差を取得する必要があるとします。日給は300としましょう。したがって、20日間は6000になります。同様に、27日間は8100になります。

この例では、最初にテーブルを作成しましょう

mysql> create table DemoTable
   -> (
   -> JoinDate date,
   -> EndDate date
   -> ,
   -> Value int
   -> );
Query OK, 0 rows affected (1.16 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('2019-01-01','2019-01-31',500);
Query OK, 1 row affected (0.37 sec)

mysql> insert into DemoTable values('2019-02-12','2019-02-25',900);
Query OK, 1 row affected (0.22 sec)

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

mysql> select *from DemoTable;

出力

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

+------------+-------------+-------+
| JoinDate   | EndDate     | Value |
+------------+-------------+-------+
| 2019-01-01 | 2019-01-31  | 500   |
| 2019-02-12 | 2019-02-25  | 900   |
+------------+-------------+-------+
2 rows in set (0.00 sec)

以下は、給与を計算するためのクエリです。日付の違いには、DATEDIFF()が使用されます-

mysql> select ABS(DATEDIFF(JoinDate,EndDate) * Value) AS Total from DemoTable;

出力

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

+-------+
| Total |
+-------+
| 15000 |
| 11700 |
+-------+
2 rows in set (0.14 sec)

  1. MySQLで月の形式で日付の違いを見つける

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Date1 date,    -> Date2 date    -> ); Query OK, 0 rows affected (1.04 sec) 挿入コマンド&miuns; を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('2017-01-10','20

  2. MySQLでは、!=NULLとISNOT NULLの違いは何ですか?

    値を!=NULLと比較すると、NULLが返されます。したがって、!=NULLは無意味です。 !=NULLとISNOT NULLの違いを確認するために、最初にテーブルを作成しましょう。 まずテーブルを作成しましょう- mysql> create table DemoTable1970    (    Value int    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTa