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

MySQL IF()関数を使用して、行の値をNULLではなくカスタマイズするにはどうすればよいですか?


「従業員」テーブルで、2人の従業員の「給与」列の値がNULLであるとします。次のように示されているデータ自体は、意味がありません。

mysql> Select * from employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1 | Gaurav  | 50000  |
| 2 | Rahul   | 20000  |
| 3 | Advik   | 25000  |
| 4 | Aarav   | 65000  |
| 5 | Ram     | 20000  |
| 6 | Mohan   | 30000  |
| 7 | Aryan   | NULL   |
| 8 | Vinay   | NULL   |
+----+--------+--------+
8 rows in set (0.22 sec)

IF()関数を使用してNULLの代わりに「N / A」を返すことにより、出力にNULLが表示されないようにすることができます。

mysql> Select ID,Name,IF(Salary IS NULL, 'N/A',Salary) As 'Salary' from employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1  | Gaurav | 50000  |
| 2  | Rahul  | 20000  |
| 3  | Advik  | 25000  |
| 4  | Aarav  | 65000  |
| 5  | Ram    | 20000  |
| 6  | Mohan  | 30000  |
| 7  | Aryan  | N/A    |
| 8  | Vinay  | N/A    |
+----+--------+--------+
8 rows in set (0.00 sec)

  1. MySQL:特殊文字を含む値を見つけてNULLに置き換えるにはどうすればよいですか?

    これには、次の構文のようにSET yourColumnName=NULLを使用します- update yourTableName set yourColumnName=NULL where yourColumnName=yourValue; まずテーブルを作成しましょう- mysql> create table DemoTable1914    (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    Code varchar(20)    )AUTO_INCR

  2. MySQLテーブルの単一行で値がNullであるかどうかを確認するにはどうすればよいですか?

    このために、MySQLでISNULLを使用できます。 テーブルを作成しましょう- 例 mysql> create table demo86    -> (    -> value1 varchar(20)    -> ,    -> value2 varchar(20)    -> ); Query OK, 0 rows affected (2.77 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 例 mysql> insert