新聞中心
Oracle數(shù)據庫操作語句實用指南

I. 基礎SQL語句
A. 數(shù)據定義語言(DDL)
1、創(chuàng)建表(CREATE TABLE)
創(chuàng)建表是數(shù)據庫設計的第一步,它定義了存儲數(shù)據的結構和類型,創(chuàng)建一個員工表可以使用以下語句:
CREATE TABLE employees ( employee_id NUMBER(6), first_name VARCHAR2(20), last_name VARCHAR2(25), email VARCHAR2(25), phone_number VARCHAR2(20), hire_date DATE, job_id VARCHAR2(10), salary NUMBER(8, 2), commission_pct NUMBER(2, 2), manager_id NUMBER(4), department_id NUMBER(4) );
在這個例子中,我們定義了一個包含員工基本信息的表,包括員工的ID、姓名、郵箱、電話、雇傭日期、職位、薪資、傭金比例、經理ID和部門ID等字段。
2、修改表結構(ALTER TABLE)
當需要更改表的結構時,可以使用ALTER TABLE語句,如果我們想要為員工表添加一個新的列來存儲員工的地址信息,可以使用以下語句:
ALTER TABLE employees ADD address VARCHAR2(50);
3、刪除表(DROP TABLE)
當不再需要一個表時,可以使用DROP TABLE語句將其刪除,刪除上述創(chuàng)建的員工表,可以使用以下語句:
DROP TABLE employees;
B. 數(shù)據操縱語言(DML)
1、插入數(shù)據(INSERT INTO)
向表中插入新數(shù)據使用INSERT INTO語句,向員工表插入一條新員工記錄,可以使用以下語句:
INSERT INTO employees (employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id) VALUES (1, 'John', 'Doe', '[email protected]', '1234567890', TO_DATE('20230101', 'YYYYMMDD'), 'IT_PROG', 5000, NULL, NULL, 10);
這里我們插入了一條員工記錄,包括員工的ID、姓名、郵箱、電話、雇傭日期、職位、薪資、傭金比例、經理ID和部門ID等信息。
2、更新數(shù)據(UPDATE)
更新表中的數(shù)據使用UPDATE語句,更新上述插入的員工記錄的薪資信息,可以使用以下語句:
UPDATE employees SET salary = 5500 WHERE employee_id = 1;
這里我們將員工ID為1的員工薪資更新為5500。
3、刪除數(shù)據(DELETE)
從表中刪除數(shù)據使用DELETE語句,刪除上述更新的員工記錄,可以使用以下語句:
DELETE FROM employees WHERE employee_id = 1;
這里我們刪除了員工ID為1的員工記錄。
4、查詢數(shù)據(SELECT)
查詢表中的數(shù)據使用SELECT語句,查詢所有員工的姓名和薪資信息,可以使用以下語句:
SELECT first_name, last_name, salary FROM employees;
這里我們選擇了員工表中的姓名和薪資字段進行查詢,將返回所有員工的這些信息。
II. 高級SQL語句
A. 聯(lián)合查詢(UNION)
聯(lián)合查詢用于合并兩個或多個SELECT語句的結果集,如果我們有兩個部門的員工表,一個用于銷售部門(sales_employees),另一個用于技術部門(tech_employees),我們可以使用UNION來獲取所有員工的列表:
SELECT employee_id, first_name, last_name FROM sales_employees UNION SELECT employee_id, first_name, last_name FROM tech_employees;
這將返回一個結果集,其中包含兩個表中所有員工的ID、名和姓。
B. 子查詢(Subqueries)
子查詢是指嵌套在其他SQL語句中的查詢,它們通常用于WHERE子句中,要找出薪資高于平均薪資的所有員工,可以使用以下帶有子查詢的SELECT語句:
SELECT * FROM employees WHERE salary > (SELECT AVG(salary) FROM employees);
在這個例子中,子查詢計算了員工表中的平均薪資,而外部查詢則選擇了所有薪資高于這個平均值的員工記錄。
C. 集合操作(如INTERSECT, EXCEPT)
集合操作符如INTERSECT和EXCEPT用于比較兩個查詢的結果集,INTERSECT返回兩個查詢共有的記錄,而EXCEPT返回第一個查詢有但第二個查詢沒有的記錄,要找出同時在銷售部門和技術部門工作的員工,可以使用INTERSECT:
SELECT employee_id FROM sales_employees INTERSECT SELECT employee_id FROM tech_employees;
相反,如果我們想找出只在銷售部門工作而不在技術部門工作的員工,可以使用EXCEPT:
SELECT employee_id FROM sales_employees EXCEPT SELECT employee_id FROM tech_employees;
這些高級SQL語句使得能夠執(zhí)行復雜的數(shù)據分析和操作,從而滿足更多樣化的業(yè)務需求。
當前題目:Oracle數(shù)據庫操作語句實用指南
網站地址:http://m.fisionsoft.com.cn/article/djdheoe.html


咨詢
建站咨詢
