Teradata - คำสั่ง SELECT

คำสั่ง SELECT ใช้เพื่อดึงข้อมูลจากตาราง

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์พื้นฐานของคำสั่ง SELECT

SELECT 
column 1, column 2, ..... 
FROM  
tablename;

ตัวอย่าง

พิจารณาตารางพนักงานต่อไปนี้

พนักงาน ชื่อจริง นามสกุล วันที่เข้าร่วม แผนก วันที่เกิด
101 ไมค์ เจมส์ 27/3/2548 1 1/5/1980
102 โรเบิร์ต วิลเลียมส์ 25/4/2550 2 5/3/1983
103 ปีเตอร์ พอล 21/3/2550 2 1/1/2553
104 อเล็กซ์ สจวร์ต 1/2/2561 2 11/6/1984
105 โรเบิร์ต เจมส์ 1/4/2561 3 1/12/1984

ต่อไปนี้เป็นตัวอย่างของคำสั่ง SELECT

SELECT EmployeeNo,FirstName,LastName 
FROM Employee;

เมื่อเรียกใช้แบบสอบถามนี้จะดึงคอลัมน์ EmployeeNo, FirstName และ LastName จากตารางพนักงาน

EmployeeNo            FirstName                       LastName 
-----------  ------------------------------  --------------------------- 
   101                   Mike                            James 
   104                   Alex                            Stuart 
   102                   Robert                          Williams 
   105                   Robert                          James 
   103                   Peter                           Paul

หากคุณต้องการดึงคอลัมน์ทั้งหมดจากตารางคุณสามารถใช้คำสั่งต่อไปนี้แทนการลงรายการคอลัมน์ทั้งหมด

SELECT * FROM Employee;

แบบสอบถามข้างต้นจะดึงบันทึกทั้งหมดจากตารางพนักงาน

WHERE ข้อ

คำสั่ง WHERE ใช้เพื่อกรองระเบียนที่ส่งคืนโดยคำสั่ง SELECT เงื่อนไขเกี่ยวข้องกับ WHERE clause เฉพาะระเบียนที่ตรงตามเงื่อนไขในส่วนคำสั่ง WHERE เท่านั้นที่จะถูกส่งกลับ

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ของคำสั่ง SELECT ที่มีส่วนคำสั่ง WHERE

SELECT * FROM tablename 
WHERE[condition];

ตัวอย่าง

แบบสอบถามต่อไปนี้ดึงข้อมูลโดยที่ EmployeeNo คือ 101

SELECT * FROM Employee 
WHERE EmployeeNo = 101;

เมื่อเรียกใช้แบบสอบถามนี้จะส่งคืนระเบียนต่อไปนี้

EmployeeNo          FirstName                      LastName 
----------- ------------------------------ ----------------------------- 
   101                 Mike                           James

สั่งโดย

เมื่อดำเนินการคำสั่ง SELECT แถวที่ส่งคืนจะไม่อยู่ในลำดับเฉพาะใด ๆ ORDER BY clause ใช้เพื่อจัดเรียงระเบียนจากน้อยไปมาก / มากไปหาน้อยในคอลัมน์ใด ๆ

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ของคำสั่ง SELECT ที่มีคำสั่ง ORDER BY

SELECT * FROM tablename 
ORDER BY column 1, column 2..;

ตัวอย่าง

แบบสอบถามต่อไปนี้ดึงข้อมูลจากตารางพนักงานและเรียงลำดับผลลัพธ์ตาม FirstName

SELECT * FROM Employee 
ORDER BY FirstName;

เมื่อดำเนินการค้นหาข้างต้นจะสร้างผลลัพธ์ต่อไปนี้

EmployeeNo         FirstName                      LastName 
----------- ------------------------------ ----------------------------- 
    104               Alex                           Stuart 
    101               Mike                           James 
    103               Peter                          Paul 
    102               Robert                         Williams 
    105               Robert                         James

GROUP BY

GROUP BY clause ใช้กับคำสั่ง SELECT และจัดเรียงระเบียนที่คล้ายกันเป็นกลุ่ม

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ของคำสั่ง SELECT ที่มีคำสั่ง GROUP BY

SELECT column 1, column2 …. FROM tablename 
GROUP BY column 1, column 2..;

ตัวอย่าง

ตัวอย่างต่อไปนี้จัดกลุ่มระเบียนตามคอลัมน์ DepartmentNo และระบุจำนวนรวมจากแต่ละแผนก

SELECT DepartmentNo,Count(*) FROM   
Employee 
GROUP BY DepartmentNo;

เมื่อดำเนินการค้นหาข้างต้นจะสร้างผลลัพธ์ต่อไปนี้

DepartmentNo    Count(*) 
------------  ----------- 
     3             1 
     1             1 
     2             3