Oracle实现分页、时间比较、单位对账


oracle sql日期比较:
在今天之前:
select * from up_date where update < to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
select * from up_date where update <= to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')

在今天只后:
select * from up_date where update > to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
select * from up_date where update >= to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')

精确时间:
select * from up_date where update = to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')

在某段时间内:
select * from up_date where update between to_date('2007-07-07 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
select * from up_date where update < to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss') and update > to_date('2007-07-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
select * from up_date where update <= to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss') and update >= to_date('2007-07-07 00:00:00','yyyy-mm-dd hh24:mi:ss')

分页查询格式:
SELECT * FROM 
(
SELECT A.*, ROWNUM RN 
FROM (SELECT * FROM TABLE_NAME) A 
WHERE ROWNUM <= 40
)
WHERE RN >= 21

/*sysdate+1 加一天
sysdate+1/24 加1小时
sysdate+1/(24*60) 加1分钟
sysdate+1/(24*60*60) 加1秒钟类推至毫秒0.001秒

–例如显示明天时间:
select sysdate+1 from dual;*/

单位对账

SELECT

  a2.*
FROM
  (
    SELECT
      a1.* ,rownum rn
    FROM
      (
        SELECT
          rownum,
          a.*,b.dzrq rq,
          c.mc dwmc,
          nvl (d.id, ' ') AS detailsId,
          To_Char (b.dzrq, 'yyyy-MM') dzyf,
          To_Char (b.dzrq, 'yyyy-mm-dd') dzrq,
          to_char (
            last_day (b.dzrq),
            'yyyy-MM-dd'
          ) date2,
          to_char (b.dzrq, 'yyyy-MM') || '-01' date1
        FROM
          jcpt_sfdz_dzmx a
        LEFT JOIN jcpt_sfdz_dzhz b ON a.dzhzId = b.id
        LEFT JOIN user00022017.z_qtgb c ON a.dwdm = c.dm
        LEFT JOIN jcpt_sfdz_details d ON a.id = d.dzmxId
        WHERE
          1 = 1
        AND TO_CHAR (b.dzrq, 'yyyy-MM') = '2016-06'
        ORDER BY
          a.djrq DESC
      ) a1
    WHERE
      rownum <= 30
  ) a2
WHERE
  rn >= 1
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值