我有像这样的列之一的行值[“ 576373”]。如何只能选择576373
答案 0 :(得分:1)
有多种方法可以做到这一点。一种有趣的方法是使用PARSENAME函数。
SELECT PARSENAME( PARSENAME( '["576373"]', 1), 1);
您还可以使用嵌套的REPLACE函数。这是两个选项的比较。
SELECT PARSENAME( PARSENAME( SomeString, 1), 1),
REPLACE( REPLACE( REPLACE( SomeString, '[', ''), ']', ''), '"', '')
FROM (VALUES('["576373"]'), ('[57637]'), ('"76373"'))x(SomeString);
答案 1 :(得分:0)
如果您需要从一列中的值中删除方括号和引号(如上述问题所示),则可以使用几种方法。以下是根据不同情况的一些信息:
在这种情况下,请使用以下代码:
-- This simply removes those first two and last two characters.
SELECT SUBSTRING(MyColumnName, 3, Len(MyColumnName) - 4) as FinalValue
SUBSTRING
效率低下,因为您需要确定要删除的字符数。在这种情况下,最好使用REPLACE
:在这种情况下,请使用以下代码:
SELECT REPLACE(REPLACE(REPLACE(MyColumnName, '"', ''), ']', ''), '[', '') as FinalValue
答案 2 :(得分:0)
SELECT (replace(replace(replace([fieldName],'[',''),']',''),'"','')) FROM [tableName]