SQL是用于访问和处理数据库的标准的计算机语言,咱们所使用的的是Oracle SQLsql
一个数据库一般包含一个或多个表,每一个表有一个名字表示,下图即为一个名为“emp”的表,接下来的操做都将基于如下的表进行数据库
字符函数:主要指参数类型是字符型,不一样函数返回值多是字符型或数值型oracle
【大小写转换】函数
函数 | 效果 | 结果 |
LOWER('SQL Course')spa |
将大写或大小写混合的字符转换成小写 | sql course |
UPPER('SQL Course')code |
将小写写或大小写混合的字符转换大写 | SQL COURSE |
INITCAP('SQL Course') | 将每一个单词的第一个字母转换成大写,其他的字母都转换成小写 | Sql course |
select ROUND(100.456,2),Round(100.456,0),Round(100.456,-1) from DUAL
默认的日期形式是: DD-MON-RRblog
咱们能够在系统变量-环境变量中,添加 key = NLS_DATE_FORMAT value = YYYY:MM:DD HH24:MI:SS 就能够正常按照‘年与日’的格式查询了!事件
SELECT ename, sal, MONTHS_BETWEEN(SYSDATE,hiredate) months FROM emp ORDER BY months; SELECT ename, sal, hiredate, ADD_MONTHS(hiredate,3) new_date FROM emp WHERE hiredate>'01-1月-82'; SELECT NEXT_DAY('2006-02-06','星期一') NEXT_DAY FROM DUAL; SELECT LAST_DAY('02-2月-06') "LAST DAY" FROM DUAL;
SELECT empno, hiredate, ROUND(hiredate, 'MONTH') FROM emp WHERE SUBSTR(hiredate,-2,2)='81'; SELECT empno, hiredate, TRUNC(hiredate, 'MONTH') FROM emp WHERE SUBSTR(hiredate,-2,2)='81';
【隐式数据类型转换规则】字符串
【显式数据类型转换规则】table
SELECT ename, TO_CHAR(hiredate, 'DD Month YYYY') HIREDATE FROM emp; Select To_char(sal,'$99,999') Salary from emp where ename = 'Scott'
select to_number(1999) year from dual;
select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;
SELECT ename, sal, comm, (sal*12)+NVL(comm,0) from emp
SELECT ename, COALESCE(comm, 0) comm , deptno FROM emp;
SELECT ename, deptno, (CASE deptno WHEN 10 THEN '销售部' WHEN 20 THEN '技术部' WHEN 30 THEN '管理部' ELSE '无' END) deptname FROM emp;
SELECT ename, deptno, decode(deptno, 10,'销售部', 20,'技术部', 30 , '管理部', '无') deptname FROM emp;