我已阅读论坛以找到解决我的问题的方法,但在使用查询时遇到 MySQL 错误。
我想提取一个字段的一部分,即 FILE_NAME 列中 \\nt4\applications\prod\hde\atn\
之后的所有内容
这是查询:
SELECT FILE_NAME,
REPLACE (FILE_NAME,'\\nt4\applications\prod\hde\atn\','') as newfilename
from atn_documents
它总是给我一个
syntax error near ''\
看起来要查看的字符串不能包含\字符??
有人可以开车送我吗?
谢谢 塞德里克
最佳答案
使用SUBSTRING_INDEX
:
SELECT
SUBSTRING_INDEX(FILE_NAME,
'\\nt4\\applications\\prod\\hde\\atn\\',
-1) AS path
FROM yourTable;
Demo
上述查询是您要求的逐字实现,因为它只返回感兴趣路径之后的内容。另请注意,您的查询甚至不运行的直接原因是,如果您希望它们作为文字,您需要通过将它们加倍来转义反斜杠 \\
。
关于mysql - 替换 MySQL Select 查询中的部分列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49359726/