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

แบบสอบถาม MySQL เพื่อแทนที่ค่า null ด้วยสตริงว่างในหลายคอลัมน์ขณะดึงข้อมูล


สำหรับสิ่งนี้ คุณสามารถใช้ IFNULL() หรือ COALESCE() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1849 ( ClientFirstName varchar(20), ClientLastName varchar(20) );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.00 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable1849 ('John', NULL) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1849 (NULL, 'Miller') แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที )mysql> แทรกลงในค่า DemoTable1849 (NULL, NULL) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1849 ('Chris', 'Brown'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) 

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก * จาก DemoTable1849;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-----------------+----------------+| ClientFirstName | ClientLastName |+-----------------+----------------+| จอห์น | NULL || NULL | มิลเลอร์ || NULL | NULL || คริส | สีน้ำตาล |+-----------------+----------------+4 แถวในชุด (0.00 วินาที)

นี่คือการสืบค้นเพื่อแทนที่ค่า null ด้วยสตริงว่างในหลายคอลัมน์ขณะดึงข้อมูล -

mysql> เลือก ifnull(ClientFirstName,'') เป็น ClientFirstName,ifnull(ClientLastName,'') เป็น ClientLastName จาก DemoTable1849;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-----------------+----------------+| ClientFirstName | ClientLastName |+-----------------+----------------+| จอห์น | || | มิลเลอร์ || | || คริส | สีน้ำตาล |+-----------------+----------------+4 แถวในชุด (0.00 วินาที)