คำสั่งย่อย SQL DISTINCT คือ ใช้เพื่อลบคอลัมน์ที่ซ้ำกันออกจากชุดผลลัพธ์ ใช้คีย์เวิร์ดเฉพาะกับคีย์เวิร์ด Select ร่วมกัน จะเป็นประโยชน์เมื่อเราหลีกเลี่ยงค่าที่ซ้ำกันในคอลัมน์/ตารางเฉพาะ … DISTINCT ลบบันทึกที่ซ้ำกันออกจากตาราง
จุดประสงค์ของประโยคที่แตกต่างกันคืออะไร
ใช้คำสั่งย่อย SQL DISTINCT เพื่อลบรายการที่ซ้ำกันออกจากชุดผลลัพธ์ของคำสั่ง SELECT.
ทำไมเราไม่ควรใช้ความแตกต่างใน SQL
นี่คือสาเหตุที่ฉันรู้สึกประหม่าเกี่ยวกับการใช้ "ชัดเจน" - ตาราง spraddr อาจมีคอลัมน์เพิ่มเติมที่คุณควรใช้เพื่อกรอง out data และ " แตกต่าง " อาจเป็น ซ่อนสิ่งนั้น นอกจากนี้ คุณอาจสร้างชุดผลลัพธ์จำนวนมากซึ่งจำเป็นต้องกรองด้วยประโยค "แตกต่าง" ซึ่งอาจทำให้เกิดปัญหาด้านประสิทธิภาพได้
ทำไมจึงใช้คำสั่งที่แตกต่างใน MySQL
คำสั่ง DISTINCT ของ MySQL คือ ใช้เพื่อลบรายการที่ซ้ำกันออกจากชุดผลลัพธ์ คำสั่ง DISTINCT สามารถใช้ได้กับคำสั่ง SELECT เท่านั้น
สิ่งที่สามารถใช้แทนความแตกต่างใน SQL ได้
ด้านล่างคือทางเลือกอื่น:
- ลบรายการที่ซ้ำกันโดยใช้ Row_Number WITH CTE (Col1, Col2, Col3, DuplicateCount) AS (SELECT Col1, Col2, Col3, ROW_NUMBER OVER(PARTITION BY Col1, Col2, Col3 ORDER BY Col1) AS DuplicateCount FROM MyTable) SELECTจาก CTE โดยที่ DuplicateCount=1.
- เอาออกซ้ำกันโดยใช้กลุ่ม By.