常用oracle语句

1.查询(分页,模糊)
selecel * from (select rownum no,workflowname, planedate from batchinfo where querydate=#{querydate}) where
<if test=“workflowname!=”" and workfloename !=null">
workflowname like “%” || #{workflowname} || “%”

and no between #{start} and #{end}
2.查询(排序)
select * from incommingtotal where querydate=#{querydate} order by time DESC
order by 排序 若是字母,则按照a-z依次排序,若是数字 按照1-9依次排序。
3.drop table user;
create table user(
querydate varchar2(255) default TO_CHAR(sysdate,‘yyyyMMDD’) not null,
name varchar2(255),
address varchar2(255)

4.插入
insert querydate,name,address into user values(#{querydate},#{name},#{address});

5.删除当天之前的,然后再将当天的插入
delete * from batchinfo where querydate= #{querydate}

6.存储过程
create or replace procedure demo(querydate in varchar2,start in varchar2,end in varchar2,flowname in varchar2,name out varchar2,address out varchar2) AS/IS
querydate varchar2;
no varchar2;
name varchar2;
address varchar2;
begin
select name,address into name,address from (select rownum no,name,address into no,name,address from user where querydate=querydate) where
if name!="" and name!=null then
name like ‘%’|| name || ‘%’
end if
and no between start and end;
dbms_output.put_line(name || address);
end
注意:(1)is和as的区别
在视图(VIEW)中只能用AS不能用IS;
在游标(CURSOR)中只能用IS不能用AS。
(2)存储过程的参数out,是怎么输出的?一执行存储过程就执行了吗?
in
out
in out
(3)mybatis怎末调用存储过程的?
https://blog.csdn.net/dwenxue/article/details/82257944


{call insert_user(
#{address,mode=in},#{name,mode=IN},#{querydate,mode=in}}

5.连接查询(左连接和右连接)
(1)左连接:查询左边的全表和右边符合条件的部分
left join/left outer join
select * from A_table a left join B_table b on a.id=b.id;
(2)只查询出两表中符合条件的部分
select * from A_table a, B_table b where a.id=b.id;
(3)右连接:查询右边的全表和左边匹配的部分
right join /right outer join
select * from A_table a right join B_table b on a.id=b.id;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值