1.查询所有列
使用 * 可查询所有列。
SELECT * FROM dept;
2.查询特定列
显示表结构:
DESC emp;
指定确定的列名:
SELECT empno, ename, sal, job FROM emp;
3.查询日期列
以简体中文显示结果:将会话的nls_date_language参数设置为SIMPLIFIED CHINESE.
ALTER SESSION SET nls_date_language='SIMPLIFIED CHINESE';
SELECT ename, hiredate FROM emp;
以美国英语显示显示结果:将会话的nls_date_language参数设置为AMERICAN.
ALTER SESSION SET nls_date_language='AMERICAN';
SELECT ename, hiredate FROM emp;
以特定格式显示日期结果:设置会话的nls_date_format参数
ALTER SESSION SET nls_date_format=' YYYY"年"MM"月"DD"日" ';
SELECT ename, hiredate FROM emp;
使用to_char函数定制日期显示格式:
SELECT ename, to_char(hiredate, 'YYYY-MM-DD') FROM emp;
4.排除重复行
使用distinct关键字
SELECT DISTINCT deptno, job FROM emp;
5.使用算术运算符
数字列可以使用算术运算符(+ 、— 、* 、/)
SELECT ename, sal, sal*12 FROM emp;
6.处理NULL
使用NVL函数处理NULL:
SELECT ename, sal, comm, sal+nvl(comm, 0) FROM emp;
如果comm为null,返回0;如果comm不为null,返回原数值
使用NVL2函数处理NULL:
SELECT ename, sal, comm, nvl(comm, sal+comm, sal) FROM emp;
如果comm不为null,返回sal+comm的结果值;如果comm为null,返回sal的结果值
7.连接字符串
使用"||"操作符连接字符串
SELECT ename || ' ''s job is ' || job FROM emp;
使用函数CONCAT连接字符串
SELECT concat( concat( ename, ' ''s salary is '), sal ) FROM emp;
8.使用列别名
如果列别名需要区分大小写、包含大小写或空格,那么必须使用双引号
SELECT ename "Name", sal*12 "Annual Salary" FROM emp;