StepCoding

การใช้ DISTINCT เพื่อตัดข้อมูลที่ซ้ำออก

อ่าน [5992] หมวดหมู่: คำสั่ง SELECT เบื้องต้น

ถ้าคำสั่ง query คืนค่ากลับมาเป็นข้อมูลแถวที่ซ้ำกัน เราสามารถตัดข้อมูลที่ซ้ำกันเหล่านั้นออกได้เพื่อให้ได้ข้อมูลที่เป็นลักษณะ unique (เป็นเอกลักษณ์ ไม่ซ้ำกัน) โดยการใช้คำสั่ง DISTINCT ตามหลัง SELECT แล้วระบุ field ที่ต้องการตรวจสอบข้อมูลซ้ำครับเช่น

SELECT last_name FROM t;
last_name
Brown
Larsson
Brown
Larsson

ถ้าเราเพิ่ม DISTINCT เข้าไป มันจะตัดข้อมูลที่ซ้ำออกเหลือเพียงข้อมูลเดียวดังนี้

SELECT DISTINCT last_name FROM t;
last_name
Brown
Larsson

ในกรณีที่ต้องการตรวจสอบข้อมูลที่ซ้ำกันแบบหลาย ๆ field ให้คั่นแต่ละ field ด้วย comma ดังนี้

# ข้อมูลทั้งหมดในตาราง t (ในกรณี 2 field)
SELECT i, j FROM t;
ij
12
1NULL
1NULL
# ตัดข้อมูลที่ซ้ำกันทั้ง 2 ฟิลด์ออกให้เหลือเพียงแถวเดียว
SELECT DISTINCT i, j FROM t;
ij
12
1NULL

ผู้สนับสนุน