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

MySQL เลือก * ด้วยรหัสที่แตกต่าง?


คุณสามารถใช้คำสั่ง GROUP BY เพื่อเลือกด้วย ID ที่แตกต่างกัน ไวยากรณ์มีดังนี้ −

เลือก *จาก yourTableName GROUP BY yourColumnName;

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้ −

mysql> สร้างตาราง DistinctIdDemo -> ( -> Id int, -> Name varchar(20), -> Age int -> );Query OK, 0 แถวได้รับผลกระทบ (1.03 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก เราได้เพิ่ม ID ที่มีค่าซ้ำกันที่นี่

แบบสอบถามมีดังต่อไปนี้ −

mysql> แทรกลงในค่า DistinctIdDemo (1,'Mike', 23); ตกลง สืบค้น 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า DistinctIdDemo (2,'Sam', 24); ตกลง สืบค้น 1 แถว ได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DistinctIdDemo (1,'Carol',23); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า DistinctIdDemo (1,'John', 28); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.33 วินาที) mysql> แทรกลงในค่า DistinctIdDemo (3,'David',26); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.22 วินาที) mysql> แทรกลงในค่า DistinctIdDemo (2, 'Larry', 29); แบบสอบถาม ตกลง ได้รับผลกระทบ 1 แถว (0.20 วินาที)

ให้เราแสดงบันทึก -

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

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+------+-------+------+| รหัส | ชื่อ | อายุ |+------+-------+------+| 1 | ไมค์ | 23 || 2 | แซม | 24 || 1 | แครอล | 23 || 1 | จอห์น | 28 || 3 | เดวิด | 26 || 2 | แลร์รี่ | 29 |+------+-------+------+6 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อรับบันทึกทั้งหมดจากตารางที่มีรหัสเฉพาะ -

mysql> เลือก *จากกลุ่ม DistinctIdDemo ตาม Id;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+------+-------+------+| รหัส | ชื่อ | อายุ |+------+-------+------+| 1 | ไมค์ | 23 || 2 | แซม | 24 || 3 | เดวิด | 26 |+------+-------+------+3 แถวในชุด (0.00 วินาที)