Teradata - ประเภทตาราง
Teradata รองรับตารางประเภทต่อไปนี้เพื่อเก็บข้อมูลชั่วคราว
- ตารางที่ได้มา
- ตารางระเหย
- ตารางชั่วคราวส่วนกลาง
ตารางที่ได้มา
ตารางที่ได้มาจะถูกสร้างใช้และลดลงภายในแบบสอบถาม สิ่งเหล่านี้ใช้เพื่อจัดเก็บผลลัพธ์ระดับกลางภายในแบบสอบถาม
ตัวอย่าง
ตัวอย่างต่อไปนี้สร้าง EmpSal ตารางที่ได้รับมาพร้อมกับบันทึกของพนักงานที่มีเงินเดือนมากกว่า 75000
SELECT
Emp.EmployeeNo,
Emp.FirstName,
Empsal.NetPay
FROM
Employee Emp,
(select EmployeeNo , NetPay
from Salary
where NetPay >= 75000) Empsal
where Emp.EmployeeNo = Empsal.EmployeeNo;
เมื่อดำเนินการค้นหาข้างต้นจะส่งคืนพนักงานที่มีเงินเดือนมากกว่า 75000
*** Query completed. One row found. 3 columns returned.
*** Total elapsed time was 1 second.
EmployeeNo FirstName NetPay
----------- ------------------------------ -----------
103 Peter 83000
ตารางระเหย
ตารางระเหยถูกสร้างใช้และลดลงภายในเซสชันผู้ใช้ คำจำกัดความของพวกเขาไม่ได้ถูกเก็บไว้ในพจนานุกรมข้อมูล พวกเขาเก็บข้อมูลระดับกลางของแบบสอบถามที่ใช้บ่อย ต่อไปนี้เป็นไวยากรณ์
ไวยากรณ์
CREATE [SET|MULTISET] VOALTILE TABLE tablename
<table definitions>
<column definitions>
<index definitions>
ON COMMIT [DELETE|PRESERVE] ROWS
ตัวอย่าง
CREATE VOLATILE TABLE dept_stat (
dept_no INTEGER,
avg_salary INTEGER,
max_salary INTEGER,
min_salary INTEGER
)
PRIMARY INDEX(dept_no)
ON COMMIT PRESERVE ROWS;
เมื่อดำเนินการค้นหาข้างต้นจะสร้างผลลัพธ์ต่อไปนี้
*** Table has been created.
*** Total elapsed time was 1 second.
ตารางชั่วคราวส่วนกลาง
คำจำกัดความของตารางชั่วคราวส่วนกลางจะถูกเก็บไว้ในพจนานุกรมข้อมูลและผู้ใช้ / เซสชันจำนวนมากสามารถใช้ได้ แต่ข้อมูลที่โหลดลงในตารางชั่วคราวส่วนกลางจะถูกเก็บไว้ในระหว่างเซสชันเท่านั้น คุณสามารถสร้างตารางชั่วคราวส่วนกลางได้มากถึง 2,000 ตารางต่อเซสชัน ต่อไปนี้เป็นไวยากรณ์
ไวยากรณ์
CREATE [SET|MULTISET] GLOBAL TEMPORARY TABLE tablename
<table definitions>
<column definitions>
<index definitions>
ตัวอย่าง
CREATE SET GLOBAL TEMPORARY TABLE dept_stat (
dept_no INTEGER,
avg_salary INTEGER,
max_salary INTEGER,
min_salary INTEGER
)
PRIMARY INDEX(dept_no);
เมื่อดำเนินการค้นหาข้างต้นจะสร้างผลลัพธ์ต่อไปนี้
*** Table has been created.
*** Total elapsed time was 1 second.