我有下表说文件名。
filename flag
fileA 1
fileB 0
fileC 0
fileD 1
fileA 1
我想要该表中所有不同的文件名,并且如果任何文件名的标记为1,我希望将该文件名替换为4个文件名,分别为FilaA_part_1,FilaA_part_2,FilaA_part_3,FilaA_part_4。
输出应该是
FilaA_part_1
FilaA_part_2
FilaA_part_3
FilaA_part_4
fileB
fileC
FilaD_part_1
FilaD_part_2
FilaD_part_3
FilaD_part_4
我可以用临时表来实现这一点。我想知道单选择查询是否可行。
我可以做到
SELECT DISTINCT CASE WHEN FLAG=1 THEN FILENAME + '_part_1'
ELSE FILENAME END
FROM FILENAMES
工会应该做到:
SELECT FILENAME
FROM FILENAMES
WHERE FLAG = 0
UNION
SELECT FILENAME + '_part_1'
FROM FILENAMES
WHERE FLAG = 1
UNION
SELECT FILENAME + '_part_2'
FROM FILENAMES
WHERE FLAG = 1
UNION
SELECT FILENAME + '_part_3'
FROM FILENAMES
WHERE FLAG = 1
UNION
SELECT FILENAME + '_part_4'
FROM FILENAMES
WHERE FLAG = 1
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句