在SQL SERVER中 如果列的字符串中最后一个字符是G或者针时,截取掉
时间: 2024-10-22 15:10:57 浏览: 68
在 SQL Server 中,如果你想从一列字符串中截取掉如果其最后一个字符是 "G" 或者 "g" 的部分,你可以使用 `LEFT` 函数结合 `CHARINDEX` 或 `SUBSTRING` 函数来实现。这里有一个基本的例子:
```sql
SELECT
SUBSTRING(column_name, 1, CHARINDEX('G', REVERSE(column_name)) - 1) AS new_column_name
FROM
your_table;
```
在这个查询中:
- `column_name` 是你需要处理的列名。
- `REVERSE(column_name)` 首先将字符串反转,这样 "G" 就会变成倒数第一个字符。
- `CHARINDEX('G', ...)` 查找 "G" 在反转字符串中的位置,索引从1开始计数。
- `SUBSTRING(column_name, 1, ...)` 截取从字符串开头到倒数第二个 "G" 之前的部分。
如果你不确定最后一个字符是否是 "g",也可以加上另一个条件:
```sql
SELECT
CASE
WHEN RIGHT(column_name, 1) IN ('G', 'g') THEN SUBSTRING(column_name, 1, LEN(column_name) - 2)
ELSE column_name
END AS new_column_name
FROM
your_table;
```
在这里,`RIGHT(column_name, 1)` 取最后一位字符,然后判断是否为 "G" 或 "g",如果不是,则直接返回原列值。
阅读全文
相关推荐


















