oracle FAQ :http://orafaq.com/wiki/Case_%28SQL%29 ; http://orafaq.com/wiki/SQL_FAQ#What_are_the_difference_between_DDL.2C_DML_and_DCL_commands.3F
1. decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)
该函数的含义如下:
IF 条件=值1 THEN
RETURN(翻译值1)
ELSIF 条件=值2 THEN
RETURN(翻译值2)
......
ELSIF 条件=值n THEN
RETURN(翻译值n)ELSE
RETURN(缺省值)
END IF
2. desc tableName : 查看表的定义。
eg:
desc scnmon_capital_loss_norm
Name Null Type
------------------------------ -------- ------------------------------------------
RISK_CAPITAL_ID NOT NULL NUMBER
SCEN_EXECUTION_ID NOT NULL NUMBER
RLOB_ID NUMBER
RLOB VARCHAR2(50)
EVENT_TYPE_ID NUMBER
EVENT_TYPE VARCHAR2(100)
TAIL FLOAT(126)
3.TRUNC 用法
turnc(n) 舍去小数点后的小数
turnc(n,m) 舍去小数点m位后的小数
4.ALTER TABLE 语句
ALTER TABLE 语句用于在已有的表中添加、修改或删除列。
如需在表中添加列,请使用下列语法:
ALTER TABLE table_name ADD column_name datatype要删除表中的列,请使用下列语法:
ALTER TABLE table_name DROP COLUMN column_name注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN column_name)。
要改变表中列的数据类型,请使用下列语法:
ALTER TABLE table_name MODIFY column_name datatype重命名表中的某一列
From Oracle 9i one can RENAME a column from a table. Look at this example:
ALTER TABLE tablename RENAME COLUMN oldcolumn TO newcolumn;
5.Case (SQL)
Examples
Scalar values:SELECT customer_id, CASE status WHEN 'A' THEN 'ACTIVE' WHEN 'I' THEN 'INACTIVE' ELSE 'UNKNOWN' END FROM customers;Predicates and subqueries in searchable form:SELECT customer_id, CASE WHEN status = 'A' THEN 'ACTIVE' WHEN status = 'I' THEN 'INACTIVE' ELSE 'UNKNOWN' END FROM customers;