gpt4 book ai didi

sql-server - SQL 中的正则表达式

转载 作者:行者123 更新时间:2023-12-01 22:29:35 25 4
gpt4 key购买 nike

e_vis_name 列的单元格中,我有组织结构,其中的部门用 \ 符号划分,例如

  • 莫斯科\方向
  • 雅罗斯拉夫\销售
  • 鄂木斯克\商业中心\销售

我需要在第一个\符号之后剪切所有内容以获得以下结果:

  • 莫斯科
  • 雅罗斯拉夫
  • 鄂木斯克

我该怎么做?

最佳答案

您可以使用 LEFT 的组合和 CHARINDEX像这样:

SELECT LEFT(colname, CHARINDEX('\', colname)-1) FROM table

编辑:如果您没有 \ 符号,如果您只想获取整列,您可以这样做:

SELECT 
CASE WHEN CHARINDEX('\', colname) > 0 THEN LEFT(colname, CHARINDEX('\', colname)-1)
ELSE ISNULL(colname, '')
END
FROM table

这是说,“如果有一个\,那么取那个点之前的字符,否则取整列。如果该列是NULL,那么就设置一个空字符串。”

我相信您可以根据自己的目的进行调整。

关于sql-server - SQL 中的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30184022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com