1.1 รายการฟังก์ชันเงื่อนไข

ภาษา SQL มีรายการฟังก์ชันที่ค่อนข้างคล้ายกับโอเปอเรเตอร์if-elseในswitchJava

มีทั้งหมด 4 ฟังก์ชั่นดังกล่าว:

ฟังก์ชั่น คำอธิบาย
1 กรณี สวิตช์อะนาล็อก
2 ถ้า() อะนาล็อกของตัวดำเนินการ ternary หรือ if-else
3 IFNULL() อะนาล็อกของ if-else
4 โมลลิฟ() อะนาล็อกของ if-else

สามตัวสุดท้ายใน SQL แสดงเป็นฟังก์ชันและCASEเป็นตัวดำเนินการที่สมบูรณ์ ดังนั้นเราจะพิจารณาแยกกันในตอนท้ายสุด

1.2 ฟังก์ชัน IF()

ฟังก์ชันIF()ใน SQL ค่อนข้างคล้ายกับตัวดำเนินการแบบไตรภาคใน Java ในภาษา SQL จะใช้ 3 พารามิเตอร์และมีลักษณะดังนี้:

IF (condition, true, false)

ต้องส่งสามนิพจน์ ไปยังฟังก์ชันIF:

  • เงื่อนไขที่ทดสอบความจริง
  • นิพจน์ที่ส่งคืนเมื่อเงื่อนไขเป็นจริง
  • นิพจน์ที่ส่งคืนเมื่อเงื่อนไขเป็นเท็จ

ด้านล่างนี้ฉันจะให้ตัวอย่างเพื่อให้ง่ายต่อการเข้าใจวิธีการทำงาน:

ขอ ผลลัพธ์
1 เลือกหาก( 1>2 , 2, 3) 3
2 เลือก IF( 1<2 , 'ใช่', 'ไม่') 'ใช่'
3 เลือก IF( STRCMP('test','test1' ), 'no', 'yes') 'เลขที่'

1.3 ฟังก์ชัน IFNULL() และ NULLIF()

IF()นอกจากนี้ยังมีการ แก้ไขสองฟังก์ชัน

การแก้ไขแรกคือIFNULL()ฟังก์ชัน ใช้เวลาเพียงสองค่า:

IFNULL (expression 1, expression 2)

ถ้าexpression1ไม่เท่ากับNULLฟังก์ชันจะส่งกลับexpression1 ถ้าexpression1 IS NULL,ฟังก์ชันจะคืนค่าexpression2 NULLสาระสำคัญคือการแทนที่ค่าเริ่มต้นเมื่อ ฟิลด์เท่ากับ

การแก้ไขที่สองของฟังก์ชันIFคือฟังก์ชันNULLIF()มันยังรับค่าสองค่า:

NULLIF (expression 1, expression 2)

มันทำงานในทิศทางตรงกันข้าม:

  • ถ้าexpression1เท่ากับexpression2ฟังก์ชันจะคืนค่าNULL;
  • ถ้านิพจน์ไม่เท่ากัน จะ ส่ง กลับexpression1