我有一个SQL问题。我有一张名为"标题"的列的表
"Prenom - Nom (85)".
我想知道SQL是否有一种方法可以更改这样的字符串:
"Nom - Prenom"
这意味着,我想将其倒转,然后删除"(85)。
预先感谢您。
是:
select concat(substring_index(left(col, length(col) - instr(reverse(col), ' ')), ' - ', -1),
' - ',
substring_index(col, ' - ', 1)
)
这假定您想要的东西比摆脱'(85)'
更一般。它删除了最后一个单词。
丑陋的地狱,几乎可以肯定不会在所有情况下工作。但这适用于您发布的示例:
select concat(
substring_index(substring_index("Prenom - Nom (85)"," (",1)," - ",-1),
" - ",
substring_index(substring_index("Prenom - Nom (85)"," (",1)," - ",1)
);