oracle常用关键字和函数
数据库的增删改查:
增:insert into ... values();
例:insert into p_emp values(sq_emp.nextval,'小白','保洁',,sysdate,,null,,);
commit;
注意,表里边有多少列,values()里边的内容就有多少,一一对应关系。后边加分号结束语句,然后commit;提交。
自增长序列:右击Sequences,new一个新的自增序列,起一个name,然后有一个nextval属性,实现自增长。 查:select ... from ...
例:select t.*,t.rowid from p_emp t(用t代表p_emp),加上t.rowid,可以直接在表里进行修改。单行语句可以不加分号! 删除:delete ... where ...
例:delete p_emp e where e.empon = ;
commit;
从一个表里边删除某-行,地址是当empon = 1的那一行。
改:update 表 set 表.属性 = ... where 表.属性 = ...;
update p_emp e set e.ename = '李华' where e.empon = ;
commit; 数据库的常用关键字:
.in---:在某个范围内
例子:select * from p_emp e where e.sal in(,,);
查表p_emp的工资分别为400,,,的那一行。
.like---:模糊查询 %表示任意字符,_表示单个字符。
例子:select * from p_emp e where e.ename like 'T%';
查询名字以t开头的,注意like后面必须加 ‘ ’,查询的为字符串的话,开头要大写。
select * from p_emp e where e.ename like 'K___';
查询以字母k开头的,然后后边有几个字母,就加几个下划线。
.order by--- 排序,默认为正序排序,esc省略了,如果需要倒序排序,则在后面加desc
例子:select * from e_emp order by e.sal desc
查询工资表倒序排列。
select * from p_emp e order by e.ename,e.sal desc;
这种情况,是先把ename进行正序,然后在每个ename这个独立的区间内,通过工资进行倒序,desc只管着后边的。
如果ename也想倒序,就在其后边加dese: select * from p_emp e order by e.ename desc,e.sal desc;
select * from e_emp order by , ;
按照第一列和第二列排序;
.group by--- 按照某几列分组
select e.job from p_emp e group by e.job;
与前边不同的是,按照哪一列分组,就去查那一列,而不是 * 。
.having 过滤分组,是和group by 关键字一块用的
select e.job from p_emp e group by e.job having count(*)>;
.alter table p_emp add sex number 给表加上一列
.case when 类似于分支
例子:select e.ename as 姓名,
case e.sex
when then
'男'
when then
'女'
else
'kk'
end 性别
from p_emp as e;
主要要有end结尾,可以把别名写在后边,默认吧as省略了 .set------设置某些属性
.distinct---去除重复
例子:select distinct t.job from p_emp t;查询去除重复之后的工作
.between...and---(闭合区间, 即包括前面的数, 也包括后面的数)
例子:select t.* from p_emp t where t.sal between and ; 工资在2000到3000的区间
.all---表示一个集合中所有的元素
例子:select t.* from p_emp t where t.sal >= all(select t2.sal from p_emp t2);
查工资最高的,all(里边装的是一个集合)
.any/some---表示一个集合中任意一个元素
例子:select t.* from p_emp t where t.sal >= any(select t2.sal from p_emp t2);
大于任何一个都满足条件,any(里边装的是一个集合) 常用函数:
.to_char---日期转换成字符型数据
例子:select to_char(t.hiredate,'yyyy-mm-dd') 日期 from p_emp t;
to_date---字符转换成日期型数据
例子:select to_date('1997-12-12','yyyy-mm-dd') 日期 from dual;
传入一个字符串,转换为日期格式,因为没有from ,所以提供了一个虚拟表 dual
select to_date('1997-12-12','yyyy-mm-dd') - sysdate 日期 from dual;
传入的的时间和系统时间求差,返回的是相差的天数。
select * from p_emp t where t.hiredate > to_date('1982-01-12','yyyy-mm-dd');
时间之间做比较
.分组函数:
mod---取余函数
avg---平均数函数
sum---求和函数
count---计数函数
例子:select t.job,sum(t.sal),avg(t.sal),count(t.sal) from p_emp t group by t.job;
主要是和group by 分组一块用的;
.decode---类似于分支语句的函数
例子:select t.ename,decode(t.sex,,'男',,'女','qqq') 性别 from p_emp t;
.substr---分割字符串
例子:select substr(t.ename,,) from p_emp t;分割名字,从第一位到第5位,
select substr(t.ename,) from p_emp t;从第一位后面的所有
.max---取最大值函数
例子:select max(t.sal) from p_emp t;
.min---取最小值函数
例子:select min(t.sal) from p_emp t;
.trunc---取整函数
例子:select trunc(12.555) from dual;
.ceil---向上取整函数
floor---向下取整
例子:select floor(12.555) from dual;
注意,上述3个函数可以用在日期上的
.nvl---过滤空值函数,传入2个参数,并且只能写入数字
nvl2---过滤空值函数2,是nvl的加强版,传入三个参数,为空返回第二个,不为空返回第三个
例子:select nvl(t.comm,) from p_emp t;如果有的项为空,那么就用赋值为0;
select nvl2(t.comm,'为空','不为空') from p_emp t;
.lower---将字母全部改为小写
upper---改为大写
例子:select upper(t.ename) from p_emp t; .concat ---链接两字符串
例子;select concat('tename','rrrr') from dual;
.wm_concat---列转行函数(也属于分组函数)
例子:select wm_concat(t.ename) from p_emp t;返回一行,把所有名字整合成一块,一个长的字符串。不常用
oracle常用关键字和函数的更多相关文章
- Oracle数据库常用关键字以及函数
常用关键字 insert into---插入数据 delete---删除数据 update---更新一条数据 select---实际工作中尽量不要写* set---设置某些属性 where---给执行 ...
- oracle 常用sql字符函数介绍
常用字符函数介绍 1.ascii 返回与指定的字符对应的十进制数: SQL>select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') ...
- 三、Oracle常用内置函数
1. ASCII 返回与指定的字符对应的十进制数; SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from d ...
- Oracle常用的OCI函数
一. Oracle oci工具包安装: $ORACLE_HOME\BIN:执行文件和help文件 $ORACLE_HOME\OCI\INCLUDE:头文件 $ORACLE_HOME\OCI\LIB\B ...
- js常用关键字和函数
document.createElement("div"): 创建一个div元素申明一个变量 document.body.appendChild(div); 将创建好的div添 ...
- Oracle常用内置函数
转换函数 to_char(d|n,fmt):把日期和数字转换为指定格式的字符串: to_number(x,fmt):把一个字符串转换为一个指定格式的数字: 判空函数 nvl(x,value):如果 ...
- oracle常用加解密函数
md5 CREATE OR REPLACE FUNCTION MD5( passwd IN VARCHAR2) RETURN VARCHAR2 IS retval varchar2(32); BEGI ...
- Oracle 常用内置函数
--绝对值 ) --求模 ,) --取整 --四舍五入 )from dual;--123.5 ) --截取 )from dual;--123.4 ) --字符串长度 --截取 select st.sn ...
- Oracle常用SQL时间函数
1.查询当前日期和时间 select sysdate from dual; 2.查询本月最后一天 select last_day(sysdate) from dual; 3.查询前后多少月 ) fro ...
随机推荐
- ArcGIS中经纬度数据转空间数据
已有这样一批数据,后缀为.txt 或者.csv .现需要将其转化为空间数据. 转换过程: 打开ArcMap选择file——>Add Data——>Add XY Data 设置经纬度对应的字 ...
- uvm_regex——DPI在UVM中的实现(三)
UVM的正则表达是在uvm_regex.cc 和uvm_regex.svh 中实现的,uvm_regex.svh实现UVM的正则表达式的源代码如下: `ifndef UVM_REGEX_NO_DPI ...
- JW Player 6.7(网页视频播放器,可在手机中播放),自定义Logo和右键菜单链接,支持MP3、MP4、FLV等格式,支持通过HTML5、FLash播放
原版下载地址:http://www.jwplayer.com/ JW Player是世界上最流行的网页影音播放器,支持的视频格式主要有:MP4.FLV.F4V等格式,支持的音频格式主要有:MP3.AA ...
- hihoCoder #1143 : 骨牌覆盖问题·一 (斐波那契数列)
题意:我们有一个2xN的长条形棋盘,然后用1x2的骨牌去覆盖整个棋盘.对于这个棋盘,一共有多少种不同的覆盖方法呢? 思路:这是斐波那契数列啊,f[n] = f[n-1] + f[n-2],初始时 f[ ...
- 详细讲解:tp3.2.3生成验证码并进行验证(ajax校验返回及自定义返回)
TP3.2.3的验证码也是比较经典的小功能,框架对这个小功能的封装还是比较完美的,废话不多说,开始记录 1.总体效果: (1)初始界面 (2)自定义的返回校验效果: (3)ajax的校验返回: 2.代 ...
- window7防火墙无法更改某些设置,错误代码0×80070422
原因:这是由于管理工具的服务中的windows防火墙被禁用了. 解决方案:在window7中点击控制面板,然后点击管理工具,在点服务,然后找到windows firewall 然后将其改为自动就就可以 ...
- pat乙级1050螺旋矩阵
1.用vector建立二维数组: vector<vector<int>> arr(rows); ; i < rows; i++) arr[i].resize(cols); ...
- Linux I/O调度
一) I/O调度程序的总结 1) 当向设备写入数据块或是从设备读出数据块时,请求都被安置在一个队列中等待完成. 2) 每个块设备都有它自己的队列. 3) I/O调度程序负责维护这些队列的顺 ...
- python_22_enumerate
a=['a','d','f','g'] for i in enumerate(a): print(i) #enumerate 把列表的下表以元组的形式取出来 #结果 # (0, 'a') # (1, ...
- 学习笔记(六): Regularization for Simplicity
目录 Overcrossing? L₂ Regularization Lambda Examining L2 regularization Check Understanding Glossay Ov ...