คุณสามารถใช้ LEFT JOIN เพื่อค้นหาค่าต่ำสุดที่ไม่ได้ใช้ในตาราง MySQL เรามาสร้างตารางกันก่อน
mysql> สร้างตาราง FindValue -> ( -> SequenceNumber int -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.56 วินาที)
แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −
mysql> แทรกลงในค่า FindValue (109); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า FindValue (110); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า FindValue ( 111); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า FindValue (113); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า FindValue (114); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.17 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −
mysql> เลือก *จาก FindValue;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+----------------+| SequenceNumber |+----------------+| 109 || 110 || 111 || 113 || 114 |+----------------+5 แถวในชุด (0.00 วินาที)นี่คือแบบสอบถามเพื่อค้นหาค่าต่ำสุดที่ไม่ได้ใช้ในตาราง MySQL
mysql> เลือก tbl1 .SequenceNumber+1 AS ValueNotUsedInSequenceNumber -> จาก FindValue AS tbl1 -> ซ้ายเข้าร่วม FindValue AS tbl2 บน tbl1.SequenceNumber+1 =tbl2.SequenceNumber -> WHERE tbl2.SequenceNumber IS NULL ->1ORDER ลำดับหมายเลข LIMIT 1;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+------------------------------+| ValueNotUsedInSequenceNumber |+------------------------------+| 112 |+------------------------------+1 แถวในชุด (0.00 วินาที)