数据库中有不连续的日期,如何获取缺失的日期

数据库中有不连续的日期,如何获取缺失的日期,第1张

最佳答案居然是答非所问,最好的办法是先建一临时表tmp_date,产生最小日期到最大日期,然后通过not exists查出来不存在的日期。

比如:

with tmp_date as

(select rownum, to_date('20160101','YYYYMMDD')+rownum-1 as dd from dual connect by rownum< to_date('20170630','YYYYMMDD')- to_date('20160101','YYYYMMDD') +2)

select from tmp_date d

where not exists (select from 待查询的表 t where t日期=ddd)

order by ddd

ID 这字段是表中的 主键吧

那么 可能和其他表 有关联 如果改动了 就要出大问题了

当然了 要是单表的话你可以整

Delid = 26

delete from tablename where id = Delid

update tablename set id = id-1 where id > Delid

更新自增的主键值 在 mysql 行的通 其他的 数据库 没试过

-----------------------------------------------------

alter table tablename AUTO_INCREMENT = AUTO_INCREMENT - 1;

将表的 自增 ID 值减 1 即可

--显示查询当天和上期期末,但是如果当天没有期末,只会显示上期,不知道你要的格式,可以行修改

SELECT  FROM T WHERE RQ='2016-06-15' AND CKBH='001' AND WPBH='AAA01'

Union

select  from (SELECT   FROM T WHERE RQ<'2016-06-15' AND CKBH='001' AND WPBH='AAA01' order by rq desc) where rownum <=1;

以上就是关于数据库中有不连续的日期,如何获取缺失的日期全部的内容,包括:数据库中有不连续的日期,如何获取缺失的日期、mysql删除数据后主键值不连续、MSSQL数据库 日期不连续 查找上个日期的期末数据 以每天为一期 但不是每天都有数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9479380.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存