且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

将一列中的值拆分为两列

更新时间:2022-12-09 22:51:44

SELECT 
  left_side  = RTRIM(SUBSTRING(col, 1, CHARINDEX('->', col)-2)),
  right_side = LTRIM(SUBSTRING(col, CHARINDEX('->', col) + 2, 4000))
FROM dbo.table;

啊,我明白了.| 字符是列说明符,不是输出的一部分.试试:

Ah, I see. | characters are column specifiers, not part of the output. Try:

SELECT 
  left_side  = LTRIM(RTRIM(SUBSTRING(col, 1, CHARINDEX('-', col)-1))),
  right_side = LTRIM(RTRIM(SUBSTRING(col, CHARINDEX('-', col) + 1, 4000)))
FROM dbo.table;