将一列中的值拆分为两列

时间:2022-10-21
本文介绍了将一列中的值拆分为两列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我在 SQL 中有一个列,我想在选择时将一列拆分为两列(通过分隔符).例如,该表当前有:

I have a column in SQL that I would like to split a column into two columns on select (by a delimiter). For example, the table currently has:

---------
Mary - 16

我想要两列作为查询结果:

I'd like two columns as the result of the query:

--------   --------
Mary       16

感谢您的帮助.

推荐答案

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;

这篇关于将一列中的值拆分为两列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一条:仅当总计数小于阈值时向 SQL Server 表中插入一行 下一条:前 N 种情况下不重复组合的 SQL 查询

相关文章

最新文章