--数据库下表一般都是从1开始,例如字符串等

SELECT *FROM employees

--字符串连接CONCAT()
SELECT employee_id,email,salary,salary*12,CONCAT(CONCAT(EMPLOYEE_ID,','),SALARY)
FROM employees
--字符串连接 还可以使用 ||
SELECT employee_id,email,salary,salary*12,EMPLOYEE_ID||','||SALARY
FROM employees --length只能用来求VARCHAR2,不能求CHAR没有意义
SELECT first_name,length(first_name)
FROM employees;
desc employees; --UPPER 全变大写、LOWER全变小写、INITCAP首字母大写其余小写
SELECT first_name,UPPER(first_name)
FROM employees;
SELECT first_name,LOWER(first_name)
FROM employees;
--数据库提供了一个伪表dual,用来满足语法要求
SELECT UPPER('hello,word')
FROM dual --TRIM、LTRIM、RTRIM截取子串
--trim从字符串前后删除某单一字符
SELECT TRIM('e' From 'eekkeeeeHello World,I am Kwineeeee!eeeeeee')
from dual;
--ltrim 删除字符串左边的某几个字符,m默认删除空格
SELECT LTRIM( 'hello','he')
from dual;
--删除字符串右面的某几个字符,默认删除口弄个
SELECT RTRIM('hello word','world')
from dual --LPAD、RPAD
--LPAD左补位
SELECT LPAD('hello ',100,'world')
FROM DUAL ;
--RPAD右补位
SELECT RPAD('hello',100,'world')
FROM dual; --SUBSTR、INSTR
--SUBSTR 截取从哪到哪的字符串
SELECT SUBSTR('Doctor who travels in tardis',8,16)
FROM DUAL;
--INSTR返回在字符串中的位置
SELECT INSTR('Doctor Who','Who') as "words"
FROM dual; --数值类型
CREATE TABLE student (
id NUMBER(10),
name CHAR(20)
);
desc student --四舍五入,第二参数为小数点精确位数
SELECT ROUND(45.678,2)
FROM dual;
--trunc 用于截取
SELECT TRUNC(45.678,2)
from dual ;
--floor向下取整
SELECT floor(45.3)
from dual;
--CEIL向上取整
SELECT CEIL(45.3)
from dual;
--mod 求余数,若第二参数为0则返回第一参数
SELECT MOD(13.3,10)
from dual; --日期操作
CREATE TABLE time(
c1 DATE,
c2 TIMESTAMP ) SELECT sysdate from dual;
SELECT to_char(systimestamp,'YYYY-MM-dd HH24:mm:ss.ff DY DAY') from dual ;
--返回指日期的当月最后一天
SELECT LAST_DAY(sysDATE) FROM dual;
--指定日期加上i个月后的日期
SELECT ADD_MONTHS(sysdate,20*12) from dual;
--计算两个日期间之间有多少个月MONTHS_BETWEEN
SELECT MONTHS_BETWEEN('2019-12-25',sysdate) from dual;
--NEXT_DAY 返回日期数据的下一个周几,周日为1
SELECT NEXT_DAY(sysdate , 1) from dual; --LEAST、GREATEST 返回最小或最大值,比较的必须是同一类型
SELECT LEAST(34,555,7999,2,3344) from dual;
SELECT GREATEST(34,555,7999,2,3344) from dual;
--EXTRACT 从参数中提取date指定的年月日等
SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL;
SELECT EXTRACT(MONTH FROM SYSDATE) FROM DUAL;
SELECT EXTRACT(DAY FROM SYSDATE) FROM DUAL; --数据库中任何数据类型都可以取null值
--null查询用 IS NULL
--NOT NULL非空约束 desc employees
select * from employees;
--NVL() 若第一参数为null,则取值第二参数
SELECT employee_id,first_name,salary,salary + NVL(commission_pct,10) as "sal" from employees;
--NVL2() 若第一参数为null,则取值第三参数;否则第一参数非null取值第二参数
SELECT employee_id,first_name,salary,salary + NVL2(commission_pct,10,14) as "sal2" from employees;

Oracle DB Day02(SQL)的更多相关文章

  1. Oracle DB Day01(SQL)

    --时间为什么不是现在呢? --设置时区和显示时间 ALTER DATABASE SET TIME_ZONE='+08:00' select to_char(current_timestamp at ...

  2. Oracle DB Day03(SQL)

    --day03 --创建一个包含下面信息的表,并添加一些记录待用 --EMPLOYEE_ID NOT NULL NUMBER(6) --FIRST_NAME VARCHAR2(20) --LAST_N ...

  3. 在silverlight中通过WCF连接ORACLE DB数据库(转)

    转自 http://hi.baidu.com/qianlihanse/item/458aa7c8d93d4e0cac092ff4 这不是我的原创,我也是上网学习的~ How to get data f ...

  4. Oracle DB 存储增强

    • 设置Automatic Storage Management (ASM)  快速镜像 再同步 • 使用ASM 首选镜像读取 • 了解可伸缩性和性能增强 • 设置ASM 磁盘组属性 • 使用SYSA ...

  5. Oracle DB 使用调度程序自动执行任务

    • 使用调度程序来简化管理任务 • 创建作业.程序和调度 • 监视作业执行 • 使用基于时间或基于事件的调度来执行调度程序作业 • 描述窗口.窗口组.作业类和使用者组的用途 • 使用电子邮件通知 • ...

  6. Oracle DB 管理数据库的空间

    • 描述4 KB 扇区磁盘的概念及使用 • 使用可移动表空间 • 描述可移动表空间的概念 数据库存储 数据库存储 数据库包括物理结构和逻辑结构.由于物理结构和逻辑结构是分开的,因此管理数据的物 理存储 ...

  7. Oracle DB 备份和恢复的概念

    • 确定Oracle DB 中可能发生的故障类型 • 说明优化实例恢复的方法 • 说明检查点.重做日志文件和归档日志文件的重要性 • 配置快速恢复区 • 配置ARCHIVELOG模式   部分工作内容 ...

  8. 用户与 Oracle DB 交互具体过程

    与 Oracle DB 交互 以下的演示样例从最主要的层面描写叙述 Oracle DB 操作.该演示样例说明了一种 Oracle DB 配置,在该配置中,用户和关联server进程执行于通过网络连接的 ...

  9. Test oracle db iops

    Today, i need to test one database's iops and do something for oracle db's io test. How to test the ...

随机推荐

  1. SpringMVC的相关知识

    前几天学习了SpringMVC 感觉比Servlet好用得多具体如下: 首先SpringMVC的概念: SpringMVC是一个前端控制框架,主要用来负责与页面的交互.SpringMVC是Spring ...

  2. selenium之表格的定位

    浏览器网页常常会包含各类表格,自动化测试工程师可能会经常操作表格中的行,列以及某些特定的单元格,因此熟练掌握表格的定位方法是自动化测试实施过程中必要的技能. 被测试网页的HTML代码 <!DOC ...

  3. eclipse java formater 配置详解

    comment.insert_new_line_before_root_tags(insert/do_not_insert):在Javadoc根标记块前插入空行,默认为insert: insert_s ...

  4. Cookies, Claims and Authentication in ASP.NET Core(转载)

    Most of the literature concerning the theme of authentication in ASP.NET Core focuses on the use of ...

  5. 用Case类生成模板代码

    将类定义为case类会生成许多模板代码,好处在于: ①会生成一个apply方法,这样就可以不用new关键字创建新的实例. ②由于case类的构造函数参数默认是val,那么构造函数参数会自动生成访问方法 ...

  6. [Alpha阶段]第七次Scrum Meeting

    Scrum Meeting博客目录 [Alpha阶段]第七次Scrum Meeting 基本信息 名称 时间 地点 时长 第七次Scrum Meeting 19/04/11 大运村寝室6楼 35min ...

  7. phpcms不能批量更新栏目页和内容页

    需要给网站根目录更加users用户的写入权限.

  8. Γ(a) 的两种方差与均值

    所以 这里是满足 Be(x+1,n-x+1),如果是要服从Be(a,b) 相应的后验概率 

  9. springboot开启事务支持时报代理错误

    问题:The bean 'xxx' could not be injected as a 'com.github.service.xx' because it is a JDK dynamic pro ...

  10. centos7重置root密码

    修改centos7的root密码重置非常简单,只需要登录系统,执行passwd按enter即可, 但是如果忘记root密码,该如何修改呢 1, 重启系统之后,系统启动进入欢迎界面,加载内核步骤时,选中 ...