PostgreSQL : คำสั่ง SQL การ SELECT แบบ DISTINCT

ตอบกระทู้


คำถามนี้ เพื่อป้องกันการส่งแบบอัตโนมัติจากสแปมบอท
รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[flash] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: PostgreSQL : คำสั่ง SQL การ SELECT แบบ DISTINCT

PostgreSQL : คำสั่ง SQL การ SELECT แบบ DISTINCT

โพสต์ โดย thitikorn_lp » 24/09/2014 2:58 pm

SELECT DISTINCT ( การเรียกดูข้อมูลที่ไม่ซ้ำกัน )

  การ SELECT แบบ DISTINCT จะแตกต่างจากการ SELECT ทั่วๆ ไป คือ คำสั่งจะทำการลบแถวที่ซ้ำกัน หรือก็คือ ไม่แสดงข้อมูลที่ซ้ำกัน

รูปแบบคำสั่ง :

โค้ด: เลือกทั้งหมด

SELECT DISTINCT
column_1
FROM table_name

อธิบายคำสั่ง
SELECT DISTINCT    :  คำสั่งเลือกแสดงข้อมูลที่ไม่ซ้ำ
column_1          :  ชื่อคอลัมน์ที่ต้องการ select
table_nam         :  ชื่อตารางที่ต้องการ select

ตัวอย่าง
จากรายชื่อทั้งหมดที่เราให้แสดง ข้อมูลของ city ด้วย จะเห็นว่า มีรายชื่อ city ที่ซ้ำกันอยู่
2014-09-24_14-28-33.jpg
2014-09-24_14-28-33.jpg (186.33 KiB) เปิดดู 1228 ครั้ง

เราจึงทำการเลือก SELECT เพียงแค่ city เพื่อให้เห็นชัดเจนขึ้น โดยทำการ
การ SELECT แบบปกติ

โค้ด: เลือกทั้งหมด

SELECT city
FROM res_partner

ผลที่ได้ :
2014-09-24_14-38-56.jpg
2014-09-24_14-38-56.jpg (196.69 KiB) เปิดดู 1228 ครั้ง

ยกตัวอย่าง "Taipei" ที่มีข้อมูลซ้ำกันถึง 4 ชื่อ
เราจึงทำการ SELECT โดยใช้ DISTINCT
การ SELECT แบบ DISTINCT

โค้ด: เลือกทั้งหมด

SELECT DISTINCT city
FROM res_partner

ผลที่ได้ :
2014-09-24_14-37-40.jpg
2014-09-24_14-37-40.jpg (54.67 KiB) เปิดดู 1233 ครั้ง

city ต่างๆ ที่มีชื่อซ้ำกัน จะไม่ถูกนำมาแสดง จะเห็นได้ว่า แต่ละชื่อจะเหลือเพียงแต่ 1 อย่างเช่น "Taipei"

.

ข้างบน