sql-server - TSQL 解析第三个元素
问题描述
我有一个包含如下数据的字段:
1763_250116_0_040
1763_250132_4_030
1763_250132_99999_030
我需要出去:
0
4
99999
我怎么能用 TSQL 做到这一点?
解决方案
如果文本中只有 4 个或更少的数字部分并且您总是想要第三部分,那么您可能应该使用内置函数PARSENAME。
select PARSENAME (REPLACE(CONVERT(NVARCHAR(100),c1),'_','.') , 2)
FROM T
GO
此解决方案最适合您的示例数据,但请阅读我上面提到的限制。对于这种格式的文本,这应该是最好的:<number>_<number>_<number which we want to get>_<number>
推荐阅读
- python - python的json:AttributeError:'str'对象没有属性'keys'
- amazon-dynamodb - 随着表格大小的增长,如何确保每天扫描表格
- css - 为什么 css mix-blend-mode: color; 覆盖除白色之外的所有颜色,而不是除白色和黑色之外的所有颜色?
- c++ - OpenMP 上并行合并排序的数组大小问题。如何在更多任务上划分合并排序?
- http - Tomcat http请求标头缺少连接:保持活动状态
- javascript - 如何从输入文本中获取价值并显示到我的模式?
- java - 如何搜索变量名
- json - 使用 jq 解压/解压 JSON
- java - Spring-boot @RequestParam 注释将请求中的 UTC 时区转换为本地时区
- multidimensional-array - 在 SAS 中重新编码多维数组变量