sql substr从右边截取18位,怎么写
时间: 2024-09-06 10:05:36 浏览: 82
SQL函数substr使用简介
5星 · 资源好评率100%
在SQL中,从字符串的右侧截取指定长度的子字符串通常需要用到一些字符串函数来实现。由于不同的数据库系统提供了不同的函数来处理字符串,这里给出两种常见数据库的实现方式:
1. 在MySQL中,可以结合`RIGHT`函数和`CHAR_LENGTH`函数来实现这一需求。`RIGHT`函数用于截取字符串的右侧部分,`CHAR_LENGTH`函数用于获取字符串的字符长度。假设有一个字段`field_name`,你可以这样写:
```sql
SELECT RIGHT(field_name, 18) FROM table_name;
```
这里的`18`表示从字符串的右侧开始截取长度为18的子字符串。
2. 在Oracle数据库中,可以使用`SUBSTR`函数。`SUBSTR`函数的第二个参数是从字符串的哪个位置开始截取(正数表示从左边开始,负数表示从右边开始),第三个参数是要截取的字符长度。对于Oracle,你可以这样写:
```sql
SELECT SUBSTR(field_name, -18, 18) FROM table_name;
```
这里的`-18`表示从字符串的第18个位置开始从右边截取,第二个`18`表示截取长度为18的子字符串。
请根据你使用的数据库系统选择合适的方法来编写SQL语句。
阅读全文