我在SQL中有一个列,我想在select(分隔符)上将列拆分为两列.例如,该表目前具有:
---------
Mary - 16
Run Code Online (Sandbox Code Playgroud)
作为查询的结果,我想要两列:
-------- --------
Mary 16
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.
SELECT
left_side = RTRIM(SUBSTRING(col, 1, CHARINDEX('->', col)-2)),
right_side = LTRIM(SUBSTRING(col, CHARINDEX('->', col) + 2, 4000))
FROM dbo.table;
Run Code Online (Sandbox Code Playgroud)
啊,我明白了.|字符是列说明符,不是输出的一部分.尝试:
SELECT
left_side = LTRIM(RTRIM(SUBSTRING(col, 1, CHARINDEX('-', col)-1))),
right_side = LTRIM(RTRIM(SUBSTRING(col, CHARINDEX('-', col) + 1, 4000)))
FROM dbo.table;
Run Code Online (Sandbox Code Playgroud)