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 แถวทั้งหมดของตารางจะถูกลบ
คุณสามารถอัปเดตตารางด้วยค่าจากตารางอื่น