Oracle
1. Select ename ,sal ,comm, sal+comm from emp;
Select ename ,sal ,comm, sal+nvl(comm,0) from emp;
注意区别,函数nvl()及nvl2();
2. String connet
Select ename||’的岗位’||job “Employeee” from emp;
3. 限制数据
不等于 <>,!=
BETWEEN …AND…. 相当于 …<= and …>=
IN(list)
LIKE
IS NULL
IS NOT NULL
AND, OR
SELECT ename ,sal , FROM emp WHERE job = ‘ MANAGER’(引号中一定要大写)
SELECT ename ,sal FROM emp WHERE ename LIKE ‘%a_%’ ESCAPE ‘a’;
SELECT ename ,sal FROM emp WHERE ename IN(‘CLERK’,’MANAGER’);
4. % :表示0或多个字符
_ : 表示单个字符
SELECT ename ,sal FROM emp WHERE ename LIKE ‘S%’;
SELECT ename ,sal FROM emp WHERE ename LIKE ‘- - 0%’
如果字符串本身包含这两个字符串,并且希望使用这两个字符执行模糊chaxun,那么
必须使用ESCAPE 选项和转义符实现
5. ORDER BY 子句用于排序,ASC 升序(默认),DESC 降序
注意,当SELECT 语句同时包含多个子句(WHERE,CROUP BY, HAVING, ORDER BY 等)时
ORDER BY 必须是最后一条句子。
SELECT * FROM EMP ORDER BY sal DESC;
使用多列排列:SELECT ename, deptno ,sal FROM emp ORDER BY deptno ASC ,sal DESC;
非选择列表列排序:SELECT ename FROM emp ORDER BY sal DESC;
别名列名排列: SELECT ename ,sal*12 年收入 FROM emp ORDER BY 年收入 DESC;
6. 集合操作符UNION ,UNION ALL, INTERSECT ,MINUS
SELECT deptno,dname FROM dept UNION SELECT empno ,ename FROM emp;
7.字符函数
select ename ,substr(ename,-4,3) from emp;//从倒数第从倒数第四位开始取三个字符
select ename ,substr(ename,4,3) from emp; //从倒数第从正数数第四位开始取三个字符
从下标是0 和下标1开始截取,效果一样,只能说明ORACLE 比较智能。
8 . 清屏 clear scr;
9. select round(789.536,2) from dual; // 保留小数点后两位结果得 789.54;
select round(789.536,-2) from dual; // 小数点往前数两位也就是8 ,然后四舍五入得800
select round(789.436) from dual; // 去掉小数点, 得789;
TRUNC() 和 ROUND() 不同的是,在TRUNC()的操作中,不会保留任何的小数,而且小数点也不会四舍五入。
10. select to_char(hiredate,’fmyyyy-mm-dd’) from emp; // fm用来去掉前导0 ;05->5