概述
--数据库连接--普通用户连接:Conn scott/tiger--超级管理员连接:Conn "sys/sys as sysdba"--Disconnect; 断开连接--DML 语句(数据操作语言)Insert、Update、Delete、Merge--DDL 语句(数据定义语言)Create、Alter、Drop、Truncate--DCL 语句(数据控制语言)Grant、Revoke--通配符 *
select * fromEMP;--where 条件
select empno,ename from emp where job = ‘MANAGER‘; --列出职位为MARTIN的员工的编号,姓名--基本运算 > +
select * from emp where comm>sal; --找出奖金高于工资的员工
select sal+comm,ename from emp; --找出每个员工奖金和工资的总和--关系运算符 or and
select * from emp where (deptno=10 and job=‘MANAGER‘) or (deptno=20 and job=‘CLERK‘); --找出部门10中的经理(MANAGER)和部门20中的普通员工(CLERK)--in
select * from emp where deptno=10 and job not in(‘MANAGER‘,‘CLERK‘) and sal>=2000; --找出部门10中既不是经理也不是普通员工,而且工资大于等于2000的员--null 和 not null
select distinct job from emp where comm is not null and comm>0; --找出有奖金的员工的不同工作--order by 排序
select ename from emp order by hiredate; --显示雇员姓名,根据其服务年限,将最老的雇员排在前面
select ename from emp order by hiredate desc; --desc 从高到低--upper 字母全部大写
select upper(ename) fromemp;select * from emp where ename=upper(‘smith‘);--lower 字母全部小写
select lower(ename) fromemp;select * fromemp;--initcap 首字母大写
select initcap(ename) fromemp;--concat 合并多个数组
select concat (ename,job) fromemp;--substr 截取字符串长度--substr(String,start,length)--string 指定要截取的字符串--start 必须,指定在字符串的何处开始 正数从指定位置开始 复位从尾数开始 零从第一个字符开始--length 可选,指定要截取的字符串长度,默认时时结束之前的全部字符
selectename,
substr (ename,-3), --从倒数第三个位置开始,截取之后的字符
substr (ename,-3,2), --从倒数第三个位置开始,截取之后的两个长度的字符
substr (ename,length(‘ename‘)-3), --设定一个五个长度的字符‘ename‘ (5-3)从第二个位置开始截取
substr (ename,length(‘ename‘)-3,2), --设定一个五个长度的字符‘ename‘ (5-3)从第二个位置开始截取2个字符长度
substr (ename,length(ename)-3), --从每个对象的字符串长度-3开始截取,截取之后的字符
substr (ename,length(ename)-3,2) --从每个对象的字符串长度-3开始截取,截取之后的两个长度的字符
fromemp;--length 获取字符串长度
select length (ename) fromemp;--replace 替换字符 将A换成C
select replace (ename,‘A‘,‘C‘) fromemp;--instr 查找里面某一个数据的位置 ’字符’区分大小写
select instr (ename,‘S‘)fromemp;--lpad 左侧填充
selectename,
lpad (ename,5,‘*‘), --从左侧开始 用‘*‘将字符长度填充够5个长度
lpad (ename,5,‘网盘‘) --不能识别汉语
fromemp;--rpad 右侧填充
select rpad (ename,5,‘*‘) from emp; --从右侧开始 用‘*‘将字符长度填充够5个长度--trim 过滤 过滤收尾空格
select trim (‘loyer‘) fromemp;--round 四舍五入
select round (sal,-2) from emp; --四舍五入小数点前面的第二位以后的数
select round (sal,2) from emp; --四舍五入小数点后面的第一位以后的数--trunc 将数字截尾取整(并非四舍五入)
select trunc (sal,-2) from emp; --从小数点前面的第二位开始截断
select trunc (sal,2) from emp; --从小数点后面的第二位开始截断--mod 取余
select mod (sal,300) fromemp;--months_between 两个日期相差的月数 sysdate代表系统时间 hiredate入职时间
select hiredate fromemp;select hiredate, months_between (sysdate,hiredate) fromemp;--add_moths 向指定日期你中加上若干月数
select add_months (sysdate,1) fromemp;--next_day 指定周内里的一个日期 取值1-7
select next_day (sysdate,7) fromemp;--last_day 本月的最后一天
select last_day (sysdate) fromemp;--round日期四舍五入 24小时制 时间过半会进成第二天
select round (sysdate) fromemp;--trunc日期截断 精确到小时会自动去掉
select trunc (sysdate) fromemp;--to_char 是把日期或数字转换为字符串
select to_char(sysdate,‘yyyy‘) fromdual;select to_char(sysdate,‘yyyy-mm-dd‘) fromdual;select to_char(sal,‘L999,999,999‘) fromemp;select to_char(sysdate,‘D‘) fromdual;--to_number 将字符转化为数字
select to_number(sysdate)+to_number(13) fromdual;--to_date 是把字符串转换为日期
Select to_date(‘20090210‘,‘yyyyMMdd‘) fromdual;--insert into 插入信息
insert into bonus values (‘4‘,‘王六‘,‘普工‘,‘2000‘,‘100‘,sysdate);insert into bonus (ename,sal) values (‘李四‘,‘2000‘)--alter 添加列
alter table bonus add ID varchar(10)--drop 删除列
alter table bonus drop columnTIMET--delete 删除属性
delete from bonus where ename like ‘%张三%‘
--update 更新修改
update bonus set 工资 = (select 工资 from bonus where ID=‘1‘) where ID =‘2‘ --更新2号员工的工资使其与1号员工工资相同--拷贝一个和bonus相同属性的表
create table bonus as select * frombonus--删除表的所有属性
delete frombonus--defau 默认值
update bonus set 工资=default where 名字 =‘赵六‘
--设定主键
create table Vip (Vid number(5) primary key,Vname varchar2(10),Vday date);
最后
以上就是会撒娇金毛为你收集整理的oracle更新右数第一位,Oracle数据库基本查询语句的全部内容,希望文章能够帮你解决oracle更新右数第一位,Oracle数据库基本查询语句所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复