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

ส่งคืนเฉพาะฟิลด์ที่แสดงจำนวนครั้งที่กำหนดโดยใช้ MySQL DISTINCT หรือไม่


หากต้องการส่งคืนฟิลด์ที่ปรากฏเป็นจำนวนครั้งที่กำหนด ไวยากรณ์จะเป็นดังนี้ −

เลือกความแตกต่าง yourColumnName, count(yourColumnName) from yourTableNamewhere yourColumnName LIKE 'J%'group by yourColumnNamehaving count(*)> 1order by yourColumnName;

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

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

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

Mysql> แทรกลงในค่า DemoTable1500 ('Adam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.23 วินาที) mysql> แทรกลงในค่า DemoTable1500 ('John'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> ลงในค่า DemoTable1500 ('Mike'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า DemoTable1500 ('John'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า DemoTable1500 ('Jace ');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงในค่า DemoTable1500 ('Jace'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า DemoTable1500 ('Jackie'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.06 วินาที)

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

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

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

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

ต่อไปนี้เป็นแบบสอบถามเพื่อส่งคืนฟิลด์ซึ่งปรากฏเป็นจำนวนครั้งโดยใช้ MySQL DISTINCT −

mysql> เลือกชื่อเฉพาะ นับ (ชื่อ) -> จาก DemoTable1500 -> โดยที่ชื่อ LIKE 'J%' -> จัดกลุ่มตามชื่อ -> มีการนับ (*)> 1 -> เรียงลำดับตามชื่อ

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

<ก่อนหน้า>+------+-------------+| ชื่อ | นับ(ชื่อ) |+------+-------------+| เจซ | 2 || จอห์น | 2 |+------+-------------+2 แถวในชุด (0.00 วินาที)