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

จะรับบันทึกแรกและสุดท้ายของตารางใน MySQL ได้อย่างไร


หากต้องการรับระเบียนแรกและรายการสุดท้าย ให้ใช้ UNION LIMIT ยังใช้เพื่อรับจำนวนระเบียนที่คุณต้องการ

ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable694 ( EmployeeId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, EmployeeName varchar(100), EmployeeSalary int); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.58 วินาที)

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

mysql> แทรกลงในค่า DemoTable694(EmployeeName,EmployeeSalary) ('Chris',457647) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงในค่า DemoTable694 (EmployeeName,EmployeeSalary) ('Robert',90883);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที) mysql> แทรกลงในค่า DemoTable694 (EmployeeName,EmployeeSalary) ('David',123532); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.19 วินาที) mysql> แทรกลงใน DemoTable694 (EmployeeName,EmployeeSalary) values('Mike',989322);Query OK, 1 แถวได้รับผลกระทบ (0.22 วินาที)

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

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

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

<ก่อนหน้า>+-----------+--------------+----------------+| รหัสพนักงาน | ชื่อพนักงาน | เงินเดือนพนักงาน |+------------+--------------+----------------+| 1 | คริส | 457647 || 2 | โรเบิร์ต | 90883 || 3 | เดวิด | 123532 || 4 | ไมค์ | 989322 |+--------------------+---------------------------+----------------+4 แถว ในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามที่จะได้รับบันทึกแรกและครั้งสุดท้าย -

mysql> (เลือก *จากลำดับ DemoTable694 โดย EmployeeId ASC LIMIT 1)UNION(เลือก *จากลำดับ DemoTable694 โดย EmployeeId DESC LIMIT 1);

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

<ก่อนหน้า>+-----------+--------------+----------------+| รหัสพนักงาน | ชื่อพนักงาน | เงินเดือนพนักงาน |+------------+--------------+----------------+| 1 | คริส | 457647 || 4 | ไมค์ | 989322 |+--------------------+---------------------------+----------------+2 แถว ในชุด (0.00 วินาที)