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

แถวที่มีจำนวนคอลัมน์สูงสุดใน MySQL


ให้เราเข้าใจวิธีค้นหาแถวที่มีคอลัมน์สูงสุดใน MySQL ได้อย่างไร -

หมายเหตุ: เราคิดว่าเราได้สร้างฐานข้อมูลชื่อ 'DBNAME' และตารางชื่อ 'tableName'

ให้เราดูวิธีการดึงแถวที่มีค่าสูงสุดของคอลัมน์เฉพาะโดยใช้แบบสอบถาม MySQL -

ซึ่งสามารถทำได้โดยใช้แบบสอบถามย่อย ที่นี่ เรากำลังดึงค่าสูงสุดของ colName3 −

สอบถาม

เลือก colName1, colName2, colName3FROM tableNameWHERE colName3=(SELECT MAX(colName3) FROM tableName);

ผลลัพธ์

<ก่อนหน้า>+--------------+--------------+------------+| colName1 | colName2 | colName3 |+--------------+--------------+------------+| 0003 | ด | 20.05 |+-------------+--------------+------------+

วิธีแก้ปัญหาอื่นๆ ได้แก่ การใช้ LEFT JOIN หรือเรียงลำดับแถวทั้งหมดจากมากไปหาน้อยตามคอลัมน์ที่ระบุ นี่จะให้แถวแรกที่มีคำสั่ง LIMIT (เฉพาะสำหรับ MySQL)

เลือก colName1, colName2, colName3FROM tableNameWHERE colName3=(SELECT MAX(colName3) FROM tableName); SELECT s1.colName1, s1 colName2, s1. colName3FROM tableName s1LEFT เข้าร่วม tableName s2 ON s1 colName3 

หากมีค่าสูงสุดหลายค่าในคอลัมน์ซึ่งแต่ละค่ามีค่าเท่ากัน คำสั่งย่อย LIMIT จะแสดงเฉพาะค่าคอลัมน์ใดค่าหนึ่งเท่านั้น