Teradata - การจัดการข้อมูล

บทนี้จะแนะนำคำสั่ง SQL ที่ใช้ในการจัดการข้อมูลที่จัดเก็บในตาราง Teradata

แทรกบันทึก

คำสั่ง INSERT INTO ใช้เพื่อแทรกระเบียนลงในตาราง

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ทั่วไปสำหรับ INSERT INTO

INSERT INTO <tablename> 
(column1, column2, column3,…) 
VALUES 
(value1, value2, value3 …);

ตัวอย่าง

ตัวอย่างต่อไปนี้แทรกระเบียนลงในตารางพนักงาน

INSERT INTO Employee (
   EmployeeNo, 
   FirstName, 
   LastName, 
   BirthDate, 
   JoinedDate, 
   DepartmentNo 
)
VALUES ( 
   101, 
   'Mike', 
   'James', 
   '1980-01-05', 
   '2005-03-27', 
   01
);

เมื่อแทรกแบบสอบถามด้านบนแล้วคุณสามารถใช้คำสั่ง SELECT เพื่อดูบันทึกจากตารางได้

พนักงาน ชื่อจริง นามสกุล วันที่เข้าร่วม แผนก วันที่เกิด
101 ไมค์ เจมส์ 27/3/2548 1 1/5/1980

แทรกจากตารางอื่น

คำสั่ง INSERT SELECT ใช้เพื่อแทรกระเบียนจากตารางอื่น

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ทั่วไปสำหรับ INSERT INTO

INSERT INTO <tablename> 
(column1, column2, column3,…) 
SELECT 
column1, column2, column3… 
FROM  
<source table>;

ตัวอย่าง

ตัวอย่างต่อไปนี้แทรกระเบียนลงในตารางพนักงาน สร้างตารางชื่อ Employee_Bkup โดยใช้คำจำกัดความคอลัมน์เดียวกับตารางพนักงานก่อนที่จะเรียกใช้แบบสอบถามแทรกต่อไปนี้

INSERT INTO Employee_Bkup ( 
   EmployeeNo, 
   FirstName, 
   LastName, 
   BirthDate, 
   JoinedDate, 
   DepartmentNo 
) 
SELECT 
   EmployeeNo, 
   FirstName, 
   LastName, 
   BirthDate, 
   JoinedDate,
   DepartmentNo 
FROM  
   Employee;

เมื่อดำเนินการค้นหาข้างต้นจะแทรกระเบียนทั้งหมดจากตารางพนักงานลงในตาราง staff_bkup

กฎ

  • จำนวนคอลัมน์ที่ระบุในรายการ VALUES ควรตรงกับคอลัมน์ที่ระบุในส่วนคำสั่ง INSERT INTO

  • ค่าจำเป็นสำหรับคอลัมน์ NOT NULL

  • หากไม่ได้ระบุค่า NULL จะถูกแทรกสำหรับช่องว่าง

  • ชนิดข้อมูลของคอลัมน์ที่ระบุในส่วนคำสั่ง VALUES ควรเข้ากันได้กับชนิดข้อมูลของคอลัมน์ในส่วนคำสั่ง INSERT

อัปเดตบันทึก

คำสั่ง UPDATE ใช้เพื่ออัปเดตเรกคอร์ดจากตาราง

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ทั่วไปสำหรับ UPDATE

UPDATE <tablename> 
SET <columnnamme> = <new value> 
[WHERE condition];

ตัวอย่าง

ตัวอย่างต่อไปนี้จะอัปเดตแผนกของพนักงานเป็น 03 สำหรับพนักงาน 101

UPDATE Employee 
SET DepartmentNo = 03 
WHERE EmployeeNo = 101;

ในผลลัพธ์ต่อไปนี้คุณจะเห็นว่า DepartmentNo ได้รับการอัปเดตจาก 1 เป็น 3 สำหรับ EmployeeNo 101

SELECT Employeeno, DepartmentNo FROM Employee; 
*** Query completed. One row found. 2 columns returned. 
*** Total elapsed time was 1 second.  
EmployeeNo    DepartmentNo 
-----------  ------------- 
   101             3

กฎ

  • คุณสามารถอัปเดตค่าของตารางได้ตั้งแต่หนึ่งค่าขึ้นไป

  • หากไม่ได้ระบุเงื่อนไข WHERE แถวทั้งหมดของตารางจะได้รับผลกระทบ

  • คุณสามารถอัปเดตตารางด้วยค่าจากตารางอื่น

ลบบันทึก

คำสั่ง DELETE FROM ใช้เพื่ออัปเดตเรกคอร์ดจากตาราง

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ทั่วไปสำหรับ DELETE FROM

DELETE FROM  <tablename> 
[WHERE condition];

ตัวอย่าง

ตัวอย่างต่อไปนี้ลบพนักงาน 101 จากพนักงานโต๊ะ

DELETE FROM Employee 
WHERE EmployeeNo = 101;

ในผลลัพธ์ต่อไปนี้คุณจะเห็นว่าพนักงาน 101 ถูกลบออกจากตาราง

SELECT EmployeeNo FROM Employee;  
*** Query completed. No rows found. 
*** Total elapsed time was 1 second.

กฎ

  • คุณสามารถอัปเดตระเบียนของตารางได้ตั้งแต่หนึ่งรายการขึ้นไป

  • หากไม่ได้ระบุเงื่อนไข WHERE แถวทั้งหมดของตารางจะถูกลบ

  • คุณสามารถอัปเดตตารางด้วยค่าจากตารางอื่น