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

แบบสอบถาม MySQL เพื่อเลือกลำดับที่แตกต่างกันโดย id


สำหรับสิ่งนี้ ให้ใช้ ORDER BY MAX() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> Id int, -> Name varchar(100) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.81 วินาที)

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

mysql> แทรกลงในค่า DemoTable (10,'John'); Query OK, 1 แถวได้รับผลกระทบ (0.51 วินาที)mysql> แทรกลงในค่า DemoTable (10,'John'); Query OK, 1 แถวได้รับผลกระทบ (0.10 วินาที )mysql> แทรกลงในค่า DemoTable (20, 'Sam'); แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DemoTable (20, 'Sam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DemoTable (30,'David');Query OK, 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงในค่า DemoTable (30,'David');Query OK, 1 แถวได้รับผลกระทบ (0.11 วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+------+-------+| รหัส | ชื่อ |+------+-------+| 10 | จอห์น || 10 | จอห์น || 20 | แซม || 20 | แซม || 30 | เดวิด || 30 | David |+------+-------+6 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อเลือกลำดับที่แตกต่างกันโดย id -

mysql> เลือกชื่อจาก DemoTable -> จัดกลุ่มตามชื่อ -> เรียงลำดับตาม max(Id) DESC -> จำกัด 2;

ผลลัพธ์

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

<ก่อนหน้า>+-------+| ชื่อ |+-------+| เดวิด || แซม |+-------+2 แถวในชุด (0.06 วินาที)