V
主页
SQL每日一题F1008,错位关联
发布人
create table F1008 ( code varchar(10), invtp varchar(10), date date ) insert into F1008 values ('1001','A','2018-01-01'); insert into F1008 values ('1001','B','2018-03-02'); insert into F1008 values ('1001','C','2018-04-01'); insert into F1008 values ('1002','AA','2018-01-01'); insert into F1008 values ('1002','BB','2018-02-28'); insert into F1008 values ('1003','CC','2018-01-01'); --Q:每个code的开始时间是当前date,结束时间是下一个日期的开始时间, -- 如果没有下一个日期,则用'3000-12-31'补齐 ;with cte as ( select *, ROW_NUMBER()OVER(ORDER BY code,invtp) rn from F1008 ) SELECT a.code, a.invtp, a.date AS start_date, b.date, ISNULL(b.date, '3000-12-31') AS end_date FROM cte a LEFT JOIN cte b ON a.rn + 1 = b.rn AND b.code = a.code;
打开封面
下载高清视频
观看高清视频
视频下载器
SQL每日一题F0810,如何每隔15分钟分组?
SQL每日一题F1028,关联子查询
SQL每日一题F1025,复杂逻辑处理
SQL每日一题F1021,while循环操作
SQL每日一题F0927,自定义排序
SQL高级知识,分组集
SQL每日一题F0331,求解回环表
SQL基础知识之join
SQL基础知识之in
SQL每日一题F0530,巧解"递归"问题
SQL每日一题F0426,求解省市区对应关系
SQL每日一题F0221,子查询的具体应用
SQL每日一题F0722,求解日期比较问题
SQL每日一题F0920,按指定时间段分组
SQL每日一题F0711,两种常见关联查询
SQL每日一题F1115,替换字符串中的数字
SQL每日一题F0222,自连接和数学函数的用法
SQL基础知识:SQL执行顺序
SQL基础知识之select into
SQL技巧合集01,四种去重方法
SQL每日一题F0329,集合论
SQL每日一题F0217,开窗函数的具体应用
SQL基础知识之between and
SQL每日一题F1105,求解连续相同问题
SQL每日一题F0506,求解背包问题
SQL高级知识,集合(交集并集差集)的用法
SQL每日一题F1019,游戏充值问题
SQL高级知识,变量
SQL每日一题F0518,开窗函数的妙用
SQL每日一题F0314,求解一行拆分成多行问题
SQL基础知识之约束的用法
SQL每日一题F0325,求解每组前N条记录
SQL高级知识,DBLINK
SQL每日一题F0224,sum开窗函数和自连接求解累加问题
SQL每日一题F1108,巧用模糊匹配求解
SQL每日一题F0303,行偏移函数lead和lag
SQL技巧合集02,三种分页方法
SQL每日一题F0406,开窗函数求解时间问题
SQL每日一题F0609,数据拼接
SQL每日一题F0729,存储过程创建日历表