Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ฉันจะปรับแต่งค่าแทนที่จะเป็น NULL ของแถวโดยใช้ฟังก์ชัน MySQL IF() ได้อย่างไร


สมมติว่าในตาราง "พนักงาน" ของเรา มีค่า 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)

เราสามารถหลีกเลี่ยงการแสดง NULL ในเอาต์พุตได้โดยใช้ฟังก์ชัน IF() เพื่อส่งคืน '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)