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

แสดงแถวสุ่มจากตาราง MySQL


หากต้องการแสดงแถวสุ่มแถวเดียว ให้ใช้ RAND() พร้อม LIMIT ที่นี่ LIMIT ใช้เพื่อดึงจำนวนระเบียน เนื่องจากเราต้องการเพียงแถวเดียว ดังนั้นจึงใช้ LIMIT 1 . ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable ( Id int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, ชื่อ varchar(50), ข้อความอ้างอิง); ตกลง, 0 แถวได้รับผลกระทบ (0.71 วินาที)

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

mysql> แทรกลงในค่า DemoTable(Name,Quote)('Chris','MySQL is a Relational database');Query OK, 1 แถวได้รับผลกระทบ (0.11 วินาที)mysql> แทรกลงในค่า DemoTable(Name,Quote) ( 'Robert','Java เป็นภาษาการเขียนโปรแกรมเชิงวัตถุ');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อ, ใบเสนอราคา) ('Mike', 'C เป็นภาษาขั้นตอน'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า DemoTable (ชื่อใบเสนอราคา) ('David', 'ไฮเบอร์เนตและสปริงเป็นเฟรมเวิร์ก'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที)

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

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

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

<ก่อนหน้า>+----+---------+-------------------------------- ------------------+| รหัส | ชื่อ | อ้างอิง |+----+---------+--------------------------------- -----------------+| 1 | คริส | MySQL เป็นฐานข้อมูลเชิงสัมพันธ์ || 2 | โรเบิร์ต | Java เป็นภาษาการเขียนโปรแกรมเชิงวัตถุ || 3 | ไมค์ | C เป็นภาษาขั้นตอน || 4 | เดวิด | ไฮเบอร์เนตและสปริงเป็นเฟรมเวิร์ก |+----+--------+----------------------------- ---------------------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงการสุ่มจากตาราง MySQL -

mysql> เลือก Id ชื่อ ใบเสนอราคาจากคำสั่ง DemoTable โดย rand() จำกัด 1;

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

<ก่อนหน้า>+----+------+-----------------------------+| รหัส | ชื่อ | คำคม |+----+------+---------------------------+| 3 | ไมค์ | C เป็นภาษาขั้นตอน |+----+------+---------------------------+1 แถว ในชุด (0.00 วินาที)