
# ltrim
ltrim函数用于从str的左端去除字符：
- 如果未指定trimChars，则默认去除空格字符。
- 如果指定了trimChars，则以trimChars中包含的字符作为一个集合，从str的左端去除尽可能长的所有字符都在集合trimChars中的子串。
相似函数：
- [rtrim](https://support.huaweicloud.com/sqlref-spark-dli/dli_spark_rtrim.html)，rtrim函数用于从str的右端去除字符。
- [trim](https://support.huaweicloud.com/sqlref-spark-dli/dli_spark_trim.html)，trim函数用于从str的左右两端去除字符。
#### 命令格式
```
ltrim([<trimChars>,] string <str>)
```
#### 参数说明
表1参数说明 
| 参数        | 是否必选 | 参数类型   | 说明                                                                      |
|:---|:---|:---|:---|
| str       | 是    | STRING | 待去除左端字符的字符串。如果输入为BIGINT、DECIMAL、DOUBLE或DATETIME类型，则会隐式转换为STRING类型后参与运算。 |
| trimChars | 是    | STRING | 待去除的字符。                                                                 |
   
#### 返回值说明
返回为STRING类型。
![](https://support.huaweicloud.com/sqlref-spark-dli/public_sys-resources/note_3.0-zh-cn.png)
- str非STRING、BIGINT、DOUBLE、DECIMAL或DATETIME类型时，返回报错。
- str或trimChars值为NULL时，返回NULL。
 
#### 示例代码
- 去除字符串" abc"的左边空格。命令示例如下。 返回字符串abc 。
  ```
  select ltrim('     abc');
  ```
  等效于如下语句。
  ```
  select trim(leading from '     abc');
  ```
  leading代表去除字符串前面的空格
  
- 输入参数为NULL。命令示例如下。 返回NULL。
  ```
  select ltrim(null); 
  select ltrim('xy', null);
  select ltrim(null, 'xy');
  ```
  
- 去除字符串yxlucyxx左端所有字符都在集合xy中的子串。 返回lucyxx，只要左端遇到x或者y就会被去掉。
  ```
  select ltrim( 'xy','yxlucyxx');
  ```
  等效于如下语句。
  ```
  select trim(leading 'xy' from 'yxlucyxx');
  ```
  
 
