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

แบบสอบถาม MySQL เพื่อรับจำนวนแต่ละรายการ fileid ในตารางที่มี Id และ FileIDs?


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

mysql> สร้างตาราง DemoTable ( Id int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, FileID int) AUTO_INCREMENT=100; Query OK, 0 แถวได้รับผลกระทบ (1.36 วินาที)

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

mysql> แทรกลงในค่า DemoTable(FileID) (50) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DemoTable (FileID) (60) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable (FileID) (50); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงใน DemoTable (FileID) ค่า (70); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที) mysql> แทรกลงใน DemoTable ค่า (FileID) (60); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.28 วินาที) mysql> แทรกลงในค่า DemoTable (FileID) (50); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.32 วินาที)

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

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

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

<ก่อนหน้า>+----+---------+| รหัส | FileID |+----+---------+| 100 | 50 || 101 | 60 || 102 | 50 || 103 | 70 || 104 | 60 || 105 | 50 |+----+---------+6 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อรับการนับของแต่ละรายการ FileID ในตาราง -

mysql> เลือก FileID,COUNT(FieldId) AS EntryCount จากกลุ่ม DemoTable ตาม FileID;

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

<ก่อนหน้า>+---------+-----------+| รหัสไฟล์ | จำนวนรายการ |+---------+-----------+| 50 | 3 || 60 | 2 || 70 | 1 |+---------+------------+3 แถวในชุด (0.00 วินาที)