Oracle statement 笔记
来源:互联网 发布:highcharts 刷新数据 编辑:程序博客网 时间:2024/06/16 16:58
1. multiple-column subqueries.
where (manager_Id, department_Id) in (select managerid, departmentid from t)
2. outter join
SELECT t1.stor_id, t1.stor_name, t2.qty
FROM stores t1, sales t2
WHERE t1.stor_id = t2.stor_id(+) // left join
WHERE t1.stor_id(+) = t2.stor_id // right join
3. using a subquery in the from clauseselect t1.stor_id, t1.qty, t2.avgqtyy
from sales t1, (select storid, avg(qty) avgqty from sales group by stor_id) t2
where t1.stor-id = t2.stor_id
and t1.qty > t2.avgqty;
4. Correlated Subqueries
SELECT last_name, salary, department_id
FROM employees outer
WHERE salary >
( SELECT AVG(salary)
FROM employees
WHERE department_id = outer.department_id)
5. With clause
Use the same query block in a SELECT statement wheneit occurs more than once withiin a complex query. The WITH clause retrieves the results of a query block and stores it in the user's temporary tablespace. And it improves performance.
6. insert all
INSERT ALL
INTO emp_name(emp_id, lname, fname) VALUES( employeeid, lastname, firstname)
INTO emp_addr(emp_id, address) VALUES(employeeid, address)
SELECT employeeid, lastname, firstname, address
FROM employees
WHERE employeeid > 3
7. conditioanal insert all
INSERT ALL
WHEN lastname like 'A%' THEN
INTO emp_name(emp_id, lname, fname) VALUES( employeeid, lastname, firstname)
WHEN lastname like 'B%' THEN
INTO emp_addr(emp_id, address) VALUES(employeeid, address)
SELECT employeeid, lastname, firstname, address
FROM employees
WHERE employeeid > 37. insert first
INSERT FIRST
WHEN lastname like 'A%' THEN
INTO emp_name(emp_id, lname, fname) VALUES( employeeid, lastname, firstname)
WHEN lastname like 'B%' THEN
INTO emp_addr(emp_id, address) VALUES(employeeid, address)
ELSE INTO emp_name2 values(employeeid, lastname,firstname)
SELECT employeeid, lastname, firstname, address
FROM employees
WHERE employeeid > 38. External table . external tables are read-only tables in which the data is stored outside the database in flat files.
9 SET Operatiors
Union/Union All
Intersect
Minus
10 General Functions
NVL(expr1, expr2) if expr1 is null, return exper2
NVL2(expr1, expr2, expr3) if expr1 is null , return exper2, else return expr3
NullIF(expr1, expr2) if expr1 = expr2, return null
11. Using explicit default valuses
Insert into departments(department_id, department_name, manager_id) values(300, 'Enineering', DEFAULT);
UPDATE departments SET manager_id = DEFAULT WHERE department_id = 10
12. Merge Statement: Perfomrs an UPDATE if the row exists, and an INSERT if it is a new row.
MERGE INTO copy_emp c
USING employees e
ON(c.employee_id = e.employee_id)
WHEN MATCHED THEN
UPDATE SET
col1 = e.col1,
col2 = e.col2
WHEN NOT MATCHED THEN
INSERT (colm_list) VALUES(column_values);
- Oracle statement 笔记
- Oracle/PLSQL: Case Statement
- Oracle/PLSQL: Exit Statement
- Oracle/PLSQL: FETCH Statement
- Oracle/PLSQL: OPEN Statement
- Oracle sql statement tuning
- oracle SQL*PLUS - SET Statement
- Oracle / PLSQL: ALTER TABLE Statement
- Oracle SQL 1 : Oracle MERGE INTO Statement
- - Statement
- statement
- Statement
- statement
- statement
- statement
- Oracle/PLSQL: WHERE CURRENT OF Statement
- 关于ORACLE Statement 对象的数目问题
- Oracle/PLSQL: WHERE CURRENT OF Statement
- Calculate the cycle of the string 字符串周期计算
- JavaScript学习总结_四.函数
- TCPIP(1)
- arm学习流程
- 用repo创建本地 Android 版本库镜像的思路
- Oracle statement 笔记
- 系统工程师之路----送给自己和技术道路迷茫的朋友们
- SNS网站优势
- 不常用的Windows API及小功能收集中...
- 运放震荡自激原因及解决办法
- uml教程
- Comuter vision algorithm and application学习笔记()
- Effective C#阅读笔记-1.使用属性(Properties)代替数据成员(Data Member)
- 初始 Ajax----小例----javascript