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

แสดงข้อมูลโดยกำหนดค่า 2 ค่าแรกก่อน แล้วค่อยใช้ DISTINCT สำหรับค่าอื่นใน MySQL

การรวมผลลัพธ์ด้วย UNION และ DISTINCT ใน MySQL

ตัวอย่างนี้แสดงวิธีการกำหนดค่าเฉพาะ 2 ค่าแรกด้วย SELECT แบบคงที่ แล้วรวมกับค่าที่ไม่ซ้ำกันจากตารางโดยใช้ UNION และ DISTINCT

สร้างตารางและเพิ่มข้อมูล

mysql> CREATE TABLE DemoTable (FirstName VARCHAR(100));
Query OK, 0 rows affected (0.96 sec)

mysql> INSERT INTO DemoTable VALUES('Chris');
mysql> INSERT INTO DemoTable VALUES('Robert');
mysql> INSERT INTO DemoTable VALUES('Mike');
mysql> INSERT INTO DemoTable VALUES('David');

แสดงข้อมูลทั้งหมด

mysql> SELECT * FROM DemoTable;

ผลลัพธ์:

+-----------+
| FirstName |
+-----------+
| Chris     |
| Robert    |
| Mike      |
| David     |
+-----------+
4 rows in set (0.00 sec)

คำสั่งรวมค่าคงที่ 2 ค่าแรกกับค่าที่ไม่ซ้ำจากตาราง

mysql> SELECT 'Robert' AS FirstName
    UNION SELECT 'David' AS FirstName
    UNION SELECT DISTINCT(FirstName) AS FirstName FROM DemoTable;

ผลลัพธ์:

+-----------+
| FirstName |
+-----------+
| Robert    |
| David     |
| Chris     |
| Mike      |
+-----------+
4 rows in set (0.00 sec)

คำอธิบาย

  • UNION จะรวมผลลัพธ์และกำจัดค่าซ้ำโดยอัตโนมัติ
  • SELECT 'Robert' และ SELECT 'David' สร้างแถวข้อมูลคงที่
  • SELECT DISTINCT(FirstName) FROM DemoTable ดึงค่าที่ไม่ซ้ำจากตาราง
  • ลำดับการแสดงผลจะตามลำดับของ UNION