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

หาค่าต่ำสุดที่มากกว่าตัวเลขที่กำหนดใน MySQL ด้วย MIN() และ WHERE

การหาค่าถัดไปที่มากกว่าตัวเลขที่กำหนด (Next Higher Value)

เพื่อหาค่าที่น้อยที่สุดแต่ยังมากกว่าตัวเลขที่กำหนด เราใช้ฟังก์ชัน MIN() ร่วมกับเงื่อนไข WHERE column > value

สร้างตารางและเพิ่มข้อมูล

mysql> CREATE TABLE DemoTable (Number INT);
Query OK, 0 rows affected (0.54 sec)

mysql> INSERT INTO DemoTable VALUES(11);
mysql> INSERT INTO DemoTable VALUES(9);
mysql> INSERT INTO DemoTable VALUES(10);
mysql> INSERT INTO DemoTable VALUES(12);

แสดงข้อมูลทั้งหมด

mysql> SELECT * FROM DemoTable;

ผลลัพธ์:

+--------+
| Number |
+--------+
| 11     |
| 9      |
| 10     |
| 12     |
+--------+
4 rows in set (0.00 sec)

คำสั่งหาค่าต่ำสุดที่มากกว่า 10

mysql> SELECT MIN(Number) FROM DemoTable WHERE Number > 10;

ผลลัพธ์:

+-------------+
| min(Number) |
+-------------+
| 11          |
+-------------+
1 row in set (0.00 sec)

คำอธิบาย

  • WHERE Number > 10 : กรองเฉพาะค่าที่มากกว่า 10 (คือ 11 และ 12)
  • MIN(Number) : หาค่าต่ำสุดจากค่าที่กรองได้ → ได้ 11
  • วิธีนี้ใช้ได้กับการหาค่าถัดไปในลำดับ เช่น รหัสสินค้า, หมายเลขคิว, หรือคะแนน