sql - 如何使用最后一个字母数字键作为参考修剪数据
问题描述
需要您在下面的数据修剪或其他方面的帮助以获得下面也显示的结果。我想获取我的引用是最后一个-
符号的数据。
请参见下面的示例。
FROM TO
+-------------------------------+
|ABC-1234-AR-R | ABC-1234-AR |
|ABC-1254-AR-IT | ABC-1254-AR |
|ABC-1223-AR-LTL| ABC-1223-AR |
|ABC-1234-R | ABC-1234 |
+-------------------------------+
解决方案
这将为您提供最后一次出现连字符的索引:
LEN(data) - CHARINDEX('-', REVERSE(data)) + 1
所以取这个长度的子串就足够了:
SELECT
data,
SUBSTRING(data, 1, LEN(data) - CHARINDEX('-', REVERSE(data))) AS data_trimmed
FROM yourTable;
演示
推荐阅读
- bash - 循环时只计算一行中的一个单词
- python - 从字典创建数据框给了我一个无法广播的错误
- scala - Spark 错误:-“值 foreach 不是对象的成员”
- flutter - Flutter 应用程序中的空值检查运算符错误
- css - 居中使表格变窄
- python - 有没有一种简单的方法可以在不发送邮件的情况下检查邮件后端在 Django 中是否有效?
- swift - XCTestCase - 如何在设置方法中删除应用程序
- php - sqlsrv_fetch_object 返回字符串数据,右截断
- swift - 有没有办法使用 FileManager 和 NSBundle 来获取支持 /Applications 目录中给定类型文件的所有应用程序?
- r - 使用具有变化值的自定义顺序来概括向量的顺序