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

รับค่าที่แตกต่างกันจำนวนสูงสุดในคอลัมน์แยกต่างหากด้วย MySQL


ใช้ฟังก์ชัน COUNT() ร่วมกับส่วนคำสั่ง GROUP BY สำหรับสิ่งนี้ ให้เราสร้างตารางก่อน -

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

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

mysql> แทรกลงในค่า DemoTable ('John'); Query OK, 1 แถวได้รับผลกระทบ (0.19 วินาที)mysql> แทรกลงในค่า DemoTable ('Sam'); Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรก ลงในค่า DemoTable ('John'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า DemoTable ('ไมค์'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า DemoTable ('John '); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที) mysql> แทรกลงในค่า DemoTable ('Sam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.24 วินาที) mysql> แทรกลงในค่า DemoTable ('Carol'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.18 วินาที)

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

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

ผลลัพธ์

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

<ก่อนหน้า>+-------+| ชื่อ |+-------+| จอห์น || แซม | | จอห์น || ไมค์ || จอห์น || แซม || Carol |+-------+7 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อจำนวนสูงสุดของค่าที่แตกต่างกันใน SQL -

mysql> เลือก Name, count(*) เป็นความถี่จากกลุ่ม DemoTable โดยลำดับชื่อตามจำนวน(*) ขีด จำกัด 1;

ผลลัพธ์

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

<ก่อนหน้า>+------+------+| ชื่อ | ความถี่ |+------+------+| จอห์น | 3 |+------+------+1 แถวในชุด (0.00 วินาที)