Oracle DB Day02(SQL)
--数据库下表一般都是从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)的更多相关文章
- Oracle DB Day01(SQL)
--时间为什么不是现在呢? --设置时区和显示时间 ALTER DATABASE SET TIME_ZONE='+08:00' select to_char(current_timestamp at ...
- Oracle DB Day03(SQL)
--day03 --创建一个包含下面信息的表,并添加一些记录待用 --EMPLOYEE_ID NOT NULL NUMBER(6) --FIRST_NAME VARCHAR2(20) --LAST_N ...
- 在silverlight中通过WCF连接ORACLE DB数据库(转)
转自 http://hi.baidu.com/qianlihanse/item/458aa7c8d93d4e0cac092ff4 这不是我的原创,我也是上网学习的~ How to get data f ...
- Oracle DB 存储增强
• 设置Automatic Storage Management (ASM) 快速镜像 再同步 • 使用ASM 首选镜像读取 • 了解可伸缩性和性能增强 • 设置ASM 磁盘组属性 • 使用SYSA ...
- Oracle DB 使用调度程序自动执行任务
• 使用调度程序来简化管理任务 • 创建作业.程序和调度 • 监视作业执行 • 使用基于时间或基于事件的调度来执行调度程序作业 • 描述窗口.窗口组.作业类和使用者组的用途 • 使用电子邮件通知 • ...
- Oracle DB 管理数据库的空间
• 描述4 KB 扇区磁盘的概念及使用 • 使用可移动表空间 • 描述可移动表空间的概念 数据库存储 数据库存储 数据库包括物理结构和逻辑结构.由于物理结构和逻辑结构是分开的,因此管理数据的物 理存储 ...
- Oracle DB 备份和恢复的概念
• 确定Oracle DB 中可能发生的故障类型 • 说明优化实例恢复的方法 • 说明检查点.重做日志文件和归档日志文件的重要性 • 配置快速恢复区 • 配置ARCHIVELOG模式 部分工作内容 ...
- 用户与 Oracle DB 交互具体过程
与 Oracle DB 交互 以下的演示样例从最主要的层面描写叙述 Oracle DB 操作.该演示样例说明了一种 Oracle DB 配置,在该配置中,用户和关联server进程执行于通过网络连接的 ...
- 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 ...
随机推荐
- 数据加密--详解 RSA加密算法 原理与实现
RSA算法简介 RSA是最流行的非对称加密算法之一.也被称为公钥加密.它是由罗纳德·李维斯特(Ron Rivest).阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adlema ...
- RocketMQ三主三从二命名服务平滑版本升级实操
本文介绍本次进行RocketMQ平滑过渡升级的实际操作 前文已经介绍过了升级基本原理,主要思想就是先升级NameSrv(命名服务)然后在升级broker节点.broker节点先升级master节点然 ...
- 浅论Python密文输入密码的方法
近来做作业(老男孩那个9.9元的训练营)我想写一个装逼点的密文输入密码,类似于: 这个东西我先前实现过,忘了获取一个字节的方法是什么,于是去网上找,发现网上的实现方式大部分都有问题. 一.网上(百度) ...
- 把流的形式转化为Base64
public class Test2 { public static String get() throws IOException { InputStream resourceAsStream = ...
- As-If-Serial 理解
as-if-serial语义的意思指: 不管怎么重排序(编译器和处理器为了提高并行度),(单线程)程序的执行结果不能被改变.编译器,runtime 和处理器都必须遵守as-if-serial语义.为了 ...
- 好程序员分享该如何选择background-image和img标签
好程序员分享该如何选择background-image和img标签,用img标签 如果你希望别人打印页面时候包含这张图片请使用img标签 当这张图片有非常有意义的语义,比如警告图标,请使用img标签及 ...
- 使用RAP2和Mock.JS实现Web API接口的数据模拟和测试
最近一直在思考如何对Web API的其接口数据进行独立开发的问题,随着Web API的越来越广泛应用,很多开发也要求前端后端分离,例如统一的Web API接口后,Winform团队.Web前端团队.微 ...
- pycharm 远程调试代码
我们在本地开发的时候,有时候需要使用到远程服务器的环境,如我们在调试微信或支付宝支付的时候. 那我们如何通过本地pycharm环境连接远程服务器进行调试呢? 1.pycharm和远程服务器连接 1)点 ...
- 分布式存储ceph——(5)ceph osd故障硬盘更换
正常状态:
- 我的Qt历程1:第一个Qt程序
1.启动Qt,按照红圈内所标注顺序执行操作. 2.按下Choose键后,在“名称”栏目里给程序起名字(不要是汉字名字). 3.在“创建路径”栏目里指定程序将要使用的路径(不能用汉字路径). 4.在“类 ...