java-(Oracle)-Oracle,plsqldev,Sql语法,Oracle函数

卸载好注册表,然后安装11g

每次在执行orderby的时候相当于是做了全排序,思考全排序的效率
会比较耗费系统的资源,因此选择在业务不太繁忙的时候进行

sql 复制代码
--给表添加注释
comment on table emp is '雇员表'
--给列添加注释;
comment on column emp.empno is '雇员工号';

select empno,ename,job
from emp
where deptno=10;

select distinct deptno from emp;

select e.empno 雇员编号,e.ename 雇员名称,e.job 雇员工作
from emp e
where e.deptno=10;

在sql中的null值必须要用is和is not来判断
between
exists
nvl(arg1,arg2),如何arg1是空,则返回arg2,如果arg1不为空,则返回arg1
dual是oracle数据库中的一张虚拟表,没有实际的数据,可以用来做测试

sql 复制代码
/*
--给表添加注释
comment on table emp is '雇员表'
--给列添加注释;
comment on column emp.empno is '雇员工号';

select empno,ename,job
from emp
where deptno=10;

select distinct deptno from emp;

select e.empno 雇员编号,e.ename 雇员名称,e.job 雇员工作
from emp e
where e.deptno=10;
*/
select * from emp where deptno <>20;
select sal from emp where sal> any(1000,1500,3000);
select sal from emp where sal> some(1000,1500,3000);
select sal from emp where sal> all(1000,1500,3000);

select * from emp where comm is null;
select * from emp where comm  is not null;
select * from emp where sal between 1500 and 3000;
select * from emp where deptno in(10,20);
select * from emp where deptno =10 or deptno= 20;
--and的优先级高于or
select *
from emp e
where exists(select deptno
                    from dept d
                    where (d.deptno=10 or d.deptno=20) and 
                    e.deptno=d.deptno)
select * from emp where ename like('S%');
select * from emp where ename like('S%T_');
select * from emp where ename like('%\%%')escape('\');
--escape转义字符
select * from emp where ename like('JO%');
select * from emp order by sal;
select * from emp order by sal desc;
select * from emp order by sal desc ,ename asc;

--计算字段
select 'my name is'||ename  from emp;
select concat('my name is',ename) from emp;
select ename,(e.sal+nvl(e.comm,0))*12 from emp e
select 100+null from dual
--并集union
--全集 union all
select * from emp where ename like('S%') minus
select * from emp where sal between 300 and 2000;

函数

组函数又称为聚合函数
输入多个值,最终只会返回一个值

sql 复制代码
select sum(sal) from emp;
select count(*) from emp;
select initcap(ename) from emp;
select upper(ename) from emp;
select lower(ename )from emp;
select lpad(ename,10,'*')from emp;
select rpad(ename,10,'*')from emp;
select trim(ename) from emp;
select ltrim(ename) from emp;
select rtrim(ename) from emp;
select instr(ename,'A') from emp;
select length(ename) from emp;
select substr(ename,0,2)from emp;
select replace('abcdefg','ab','hehe')from emp;
select round(123.129,2) from dual;
select trunc(123.128,2) from dual;
select mod(10,4)from dual;
select ceil(10.555)from dual;
select floor(1255.222)from dual;
相关推荐
极限实验室32 分钟前
INFINI Labs 产品更新 - Easysearch 2.1.0 新增高性能 Rules 规则引擎插件,数据探索 Discover 等
数据库·产品
鹿角片ljp2 小时前
苍穹外卖 day05:店铺营业状态设置与Redis入门实战
数据库·redis·缓存
m0_743470373 小时前
使用Python进行PDF文件的处理与操作
jvm·数据库·python
Demon_Hao3 小时前
JAVA通过Redis实现Key分区分片聚合点赞、收藏等计数同步数据库,并且通过布隆过滤器防重复点赞
java·数据库·redis
掘根4 小时前
【微服务即时通讯】消息转发子服务
数据库·oracle
喜欢喝果茶.4 小时前
SQL 预处理
数据库·sql
数据科学小丫5 小时前
Python 数据存储操作_数据存储、补充知识点:Python 与 MySQL交互
数据库·python·mysql
Knight_AL5 小时前
Nacos 启动问题 Failed to create database ’D:\nacos\nacos\data\derby-data’
开发语言·数据库·python
xianjian09126 小时前
MySQL 的 INSERT(插入数据)详解
android·数据库·mysql
知识分享小能手7 小时前
MongoDB入门学习教程,从入门到精通,MongoDB入门指南 —— 知识点详解(2)
数据库·学习·mongodb