我有一张有两个字段的表
SETID SEL_GROUP
KICAE AA_01DBA
KICAE AA_02DHM
KICAE AA_03DML
KICAE AA_03DMO
KICAE AA_05CAO
KICAE AA_05CGA
另一个表有两个字段
SETID COURSELIST
KICAE 110011000
KICAE 110011200
KICAE 110011500
KICAE 110011530
KICAE 110021000
KICAE 110021200
KICAE 110021500
KICAE 110021530
................
在表2中,课程列表的最后4个字符依次从位置3到位置5重复。
我希望输出是
SETID SEL_GROUP COURSE_LIST
KICAE AA_01DBA 110011000
KICAE AA_01DBA 110011200
KICAE AA_01DBA 110011500
KICAE AA_01DBA 110011530
KICAE AA_02DHM 110021000 ---------The Sequence Changes When the SEL_GROUP Changes
KICAE AA_02DHM 110021200
KICAE AA_02DHM 110021500
KICAE AA_02DHM 110021530
2条答案
按热度按时间7uhlpewt1#
你好像想要这样的东西:
这将枚举中的组
table2
基于课程列表中的前五个字符。然后它枚举table1
用它来连接。0qx6xfy62#
可以使用窗口函数:
第一个子查询按顺序排列具有相同属性的记录
setid
. 第二个子查询将相同的秩分配给具有相同秩的记录setid
这首歌的前6个字是谁的course_list
都是一样的。那你就可以了join
这两个结果集可以得到您想要的结果。db小提琴演示: