คุณสามารถใช้คีย์เวิร์ดที่แตกต่างกันเพื่อเลือกค่าทั้งหมดจากตารางได้เพียงครั้งเดียวหากซ้ำกัน
ไวยากรณ์มีดังนี้
เลือก yourColumnName ที่แตกต่างจาก yourTableName;
เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้
mysql> สร้างตาราง displayOnlyDistinctValue -> ( -> UserId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> UserName varchar(100), -> UserAge int -> );Query OK, 0 แถวได้รับผลกระทบ (0.47 วินาที)
แทรกบางระเบียนในตารางโดยใช้คำสั่ง insert
แบบสอบถามมีดังนี้
mysql> แทรกลงใน displayOnlyDistinctValue(UserName,UserAge) values('Larry',23);Query OK, 1 แถวได้รับผลกระทบ (0.23 วินาที)mysql> แทรกลงใน displayOnlyDistinctValue(ชื่อผู้ใช้, UserAge) ค่า ('Mike',23);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงใน displayOnlyDistinctValue (ชื่อผู้ใช้ UserAge) ค่า ('Larry', 21); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงใน displayOnlyDistinctValue (ชื่อผู้ใช้ UserAge) ค่า ('แซม', 23); ตกลง แบบสอบถาม 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงใน displayOnlyDistinctValue (ชื่อผู้ใช้ UserAge) ค่า ('Carol', 25); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงใน displayOnlyDistinctValue(ชื่อผู้ใช้, UserAge) ค่า ('Sam',26); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงใน displayOnlyDistinctValue (ชื่อผู้ใช้ UserAge) ค่า ('Sam',27); แบบสอบถามตกลง 1 แถวที่ได้รับผลกระทบ (0.13 วินาที)mysql> แทรกลงในค่า displayOnlyDistinctValue (ชื่อผู้ใช้ UserAge) ('Bob', 22); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที) mysql> แทรกลงในค่า displayOnlyDistinctValue (ชื่อผู้ใช้ UserAge) ('Larry' ,22);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.16 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select
แบบสอบถามมีดังนี้
mysql> เลือก *จาก displayOnlyDistinctValue;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+---------+----------+---------+| รหัสผู้ใช้ | ชื่อผู้ใช้ | อายุผู้ใช้ |+---------+----------+---------+| 1 | แลร์รี่ | 23 || 2 | ไมค์ | 23 || 3 | แลร์รี่ | 21 || 4 | แซม | 23 || 5 | แครอล | 25 || 6 | แซม | 26 || 7 | แซม | 27 || 8 | บ๊อบ | 22 || 9 | แลร์รี่ | 22 |+-------+----------+---------+9 แถวในชุด (0.00 วินาที)นี่คือคิวรีเพื่อเลือกค่าทั้งหมดจากตารางเพียงครั้งเดียวหากซ้ำกัน
กรณีที่ 1 - ในชื่อคอลัมน์ชื่อผู้ใช้
แบบสอบถามมีดังนี้
mysql> เลือกชื่อผู้ใช้ที่แตกต่างจาก displayOnlyDistinctValue
ผลลัพธ์
<ก่อนหน้า>+----------+| ชื่อผู้ใช้ |+----------+| แลร์รี่ || ไมค์ || แซม || แครอล || Bob |+----------+5 แถวในชุด (0.00 วินาที)กรณีที่ 2 -ในชื่อคอลัมน์ UserAge
แบบสอบถามมีดังนี้
mysql> เลือก UserAge ที่แตกต่างจาก displayOnlyDistinctValue;
ผลลัพธ์..
<ก่อนหน้า>+---------+| อายุผู้ใช้ |+---------+| 23 || 21 || 25 | | 26 || 27 || 22 |+---------+6 แถวในชุด (0.00 วินาที)