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

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


ในการนับจำนวนระเบียนที่ไม่ซ้ำ ให้ใช้ DISTINCT ร่วมกับ COUNT() ต่อไปนี้เป็นไวยากรณ์ -

เลือกจำนวน (DISTINCT yourColumnName) จาก yourTableName;

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

mysql> สร้างตาราง DemoTable-> (-> ชื่อ varchar(20),-> Score int-> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.67 วินาที)

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

mysql> แทรกลงในค่า DemoTable ('John',56); ตกลง แบบสอบถาม 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า DemoTable ('Sam',89); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.20 วินาที) )mysql> แทรกลงในค่า DemoTable ('John',56); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DemoTable ('Carol', 60); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable ('Sam',89); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.14 วินาที) mysql> แทรกลงในค่า DemoTable ('Carol',60); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.20 วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+-------+-------+| ชื่อ | คะแนน |+-------+-------+| จอห์น | 56 || แซม | 89 || จอห์น | 56 || แครอล | 60 || แซม | 89 || แครอล | 60 |+-------+-------+6 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามที่จะได้รับจำนวนระเบียนที่แตกต่างกันในคอลัมน์ -

mysql> เลือกจำนวน (คะแนน DISTINCT) จาก DemoTable;

ผลลัพธ์

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

<ก่อนหน้า>+-----------------------+| นับ(คะแนน DISTINCT) |+----------------------+| 3 |+-----------------------+1 แถวในชุด (0.00 วินาที)