1 oracle分页的一种写法
SELECT * FROM ( SELECT row_.*, rownum rownum_ FROM (...... ) row_ WHERE rownum <= ?) WHERE rownum_ > ?
2 日期月日比较不用年(转换成字符串可直接进行 > < 比较)
select
substr('0' || Extract(MONTH from to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd')),2) --月份
|| substr('0' || Extract(DAY FROM to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd')),2) --日
from dual;
3 列重复的取出最大的或者最小的,或者计算有重复的行
select t1.pid, max(t.T_END_DATE) as insDate
from tb_oyp t1,tb_poy t2
where t1.c_tci_id = t2.c_cst_id
group by pid
--t1与t2一对多关系
--所以查出来如下可能:
-- 1 2010-2-2
-- 1 2010-4-3
-- 通过 group by max()之后可以得出一条最大的
-- 也可以 group by min()得出最小的一条
-- 也可以 group by count(pid)得出重复的;
分享到:
相关推荐
同时,避免在分页查询中使用聚集函数或在子查询中使用`GROUP BY`,因为这可能导致Oracle无法有效地利用索引。 总的来说,Oracle的分页查询通过嵌套查询和`ROWNUM`伪列来实现。正确地使用分页查询可以显著提高用户...
为了确保结果的准确性,Oracle要求每个非聚合列必须被包含在`GROUP BY`子句中或作为聚合函数的一部分。 #### 二、序列(Sequence)的创建和使用 在数据库设计中,序列(Sequence)是一种用于自动生成唯一编号的...
ORDER BY子句中使用的列将是为显示所选择的列,但是实际上并不一定要这样,用非检索的列排序数据是完全合法的。 为了按多个列排序,列名之间用逗号分开。 2、支持按相对列位置进行排序。 输入 SELECT prod_id,...
sql> create user juncky identified by oracle default tablespace users sql> temporary tablespace temp quota 10m on data password expire sql> [account lock|unlock] [profile profilename|default]; ...
-- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...
{12.7.1}group by}{159}{subsection.12.7.1} {12.7.2}having}{160}{subsection.12.7.2} {12.8}子查询}{161}{section.12.8} {12.9} 授权与回收权限}{161}{section.12.9} {12.10}示例}{162}{section.12.10} {...