orical 数据库 搜索语句
1.分页
select * from (select A.* , rownum B from (select * from 表名)A where rownum<=5) where B>2 order by 列名 desc;
rownum是一个伪列,是oracle系统自动为查询返回结果的每行分配的编号,第一行为1,第二行为2,以此类推。。。。
2.联合查询
两张表 之用其中一张表的 部门名字 另一张表里统计出 每个部门男女人数
select name ,count(XB) ,sum(case where XB = '男' then 1 else 0 end ),sum(case where XB = '女' then 1 else 0 end ) from 表1 a right join 表2 b on a.编号 = b.编号 group by 部门 having name like '%派出所‘;
3.不在指定时间段内
select * from 表名 where ( 时间字段 not between 8 and 9 ) and ( 时间字段 not between 10 and 12 )
4.orical 分组查询获取每组第一条数据y
select t.name1,t.name2,t.zx from (select row_number()over(partition by name1 order by zx desc)rn, test.* from test)t where t.rn=1;
3. 网上百度 left join 和 right join