- SQL 教程
- SQL - 首頁
- SQL - 概述
- SQL - RDBMS 概念
- SQL - 資料庫
- SQL - 語法
- SQL - 資料型別
- SQL - 運算子
- SQL - 表示式
- SQL 資料庫
- SQL - 建立資料庫
- SQL - 刪除資料庫
- SQL - 選擇資料庫
- SQL - 重新命名資料庫
- SQL - 顯示資料庫
- SQL - 備份資料庫
- SQL 表
- SQL - 建立表
- SQL - 顯示錶
- SQL - 重命名錶
- SQL - 截斷表
- SQL - 克隆表
- SQL - 臨時表
- SQL - 修改表
- SQL - 刪除表
- SQL - 刪除表資料
- SQL - 約束
- SQL 查詢
- SQL - 插入查詢
- SQL - 選擇查詢
- SQL - Select Into
- SQL - Insert Into Select
- SQL - 更新查詢
- SQL - 刪除查詢
- SQL - 排序結果
- SQL 檢視
- SQL - 建立檢視
- SQL - 更新檢視
- SQL - 刪除檢視
- SQL - 重新命名檢視
- SQL 運算子和子句
- SQL - Where 子句
- SQL - Top 子句
- SQL - Distinct 子句
- SQL - Order By 子句
- SQL - Group By 子句
- SQL - Having 子句
- SQL - AND & OR
- SQL - BOOLEAN (BIT) 運算子
- SQL - LIKE 運算子
- SQL - IN 運算子
- SQL - ANY, ALL 運算子
- SQL - EXISTS 運算子
- SQL - CASE
- SQL - NOT 運算子
- SQL - 不等於
- SQL - IS NULL
- SQL - IS NOT NULL
- SQL - NOT NULL
- SQL - BETWEEN 運算子
- SQL - UNION 運算子
- SQL - UNION vs UNION ALL
- SQL - INTERSECT 運算子
- SQL - EXCEPT 運算子
- SQL - 別名
- SQL 連線
- SQL - 使用連線
- SQL - 內連線
- SQL - 左連線
- SQL - 右連線
- SQL - 交叉連線
- SQL - 全連線
- SQL - 自連線
- SQL - 刪除連線
- SQL - 更新連線
- SQL - 左連線 vs 右連線
- SQL - Union vs Join
- SQL 鍵
- SQL - 唯一鍵
- SQL - 主鍵
- SQL - 外部索引鍵
- SQL - 複合鍵
- SQL - 備用鍵
- SQL 索引
- SQL - 索引
- SQL - 建立索引
- SQL - 刪除索引
- SQL - 顯示索引
- SQL - 唯一索引
- SQL - 聚集索引
- SQL - 非聚集索引
- 高階 SQL
- SQL - 萬用字元
- SQL - 註釋
- SQL - 注入
- SQL - 託管
- SQL - Min & Max
- SQL - 空值函式
- SQL - 檢查約束
- SQL - 預設約束
- SQL - 儲存過程
- SQL - NULL 值
- SQL - 事務
- SQL - 子查詢
- SQL - 處理重複資料
- SQL - 使用序列
- SQL - 自動遞增
- SQL - 日期和時間
- SQL - 遊標
- SQL - 公共表表達式
- SQL - Group By vs Order By
- SQL - IN vs EXISTS
- SQL - 資料庫調優
- SQL 函式參考
- SQL - 日期函式
- SQL - 字串函式
- SQL - 聚合函式
- SQL - 數值函式
- SQL - 文字和影像函式
- SQL - 統計函式
- SQL - 邏輯函式
- SQL - 遊標函式
- SQL - JSON 函式
- SQL - 轉換函式
- SQL - 資料型別函式
- SQL 有用資源
- SQL - 問答
- SQL - 快速指南
- SQL - 有用函式
- SQL - 有用資源
- SQL - 討論
SQL - TRIM() 函式
SQL 的TRIM()函式用於移除字串中的空格。
它返回一個新的字串,透過從給定字串的開頭、結尾或兩端移除所有空格或其他指定的字元。
注意 - 預設情況下,TRIM()函式會移除字串開頭和結尾的空格字元。
此TRIM()函式接受一個字串作為引數,你需要修剪它以及一個可選的字串,表示要移除的字首或字尾。如果你將可選引數作為引數傳遞給此函式,它將從給定字串中移除前導、尾隨或兩者。你必須在兩個引數之間使用FROM 子句。
例如,如果你傳遞'$'作為可選引數,此函式將移除所有前導和尾隨美元符號。
可選引數指定要修剪字串的哪一側 -
- BOTH - 它移除從字串開頭和結尾指定的字元(預設位置行為)。
- LEADING - 它移除從字串開頭指定的字元。
- TRAILING - 它移除從字串結尾指定的字元。
語法
以下是 SQL TRIM()函式的語法 -
TRIM ( [ LEADING | TRAILING | BOTH ] [characters FROM ] string ) Or TRIM ( [ characters FROM ] string ) Or TRIM ( string )
引數
- str - 需要修剪的字串。
返回值
此函式返回一個已修剪的字串。
示例
在以下示例中,我們使用 SQL TRIM()函式從字串' hello '的兩側移除空格。
SELECT TRIM(' hello ');
輸出
以下是上述查詢的輸出 -
+----------------------+
| TRIM(' hello ') |
+----------------------+
| hello |
+----------------------+
示例
在以下示例中,我們在TRIM()函式內部使用FROM 子句,並使用此函式嘗試從字串' # hello .'中移除可能的字元列表' #.,$^ '。
SELECT TRIM( '#.,$^ ' FROM ' # hello .') AS Output;
輸出
執行上述查詢後,將產生以下輸出 -
+--------------+ | Output | +--------------+ | hello | +--------------+
示例
使用LEADING 子句,你可以移除從字串開頭指定的字元。
在以下示例中,我們在TRIM()函式內部使用LEADING 和 FROM 子句,以從字串' # test this #.'的開頭移除指定的字元'#,$ '。
SELECT TRIM(LEADING '#,$ ' FROM ' # test this #.') AS Result;
輸出
以上語句產生以下輸出 -
+-----------------+ | Result | +-----------------+ | test this #. | +-----------------+
示例
你還可以使用TRAILING 子句移除從字串結尾指定的字元。
在此示例中,我們在TRIM()函式內部使用TRAILING 和 FROM 子句,以從字串' # test this #'的結尾移除指定的字元'#,.!'。
SELECT TRIM(TRAILING '#,.!' FROM ' # test this #') AS Result;
輸出
以下是上述查詢的輸出 -
+----------------------+ | Result | +----------------------+ | # test this | +----------------------+
示例
使用BOTH 子句,你可以移除從字串開頭和結尾指定的字元。
SELECT TRIM(BOTH '##$' FROM '##$12345##$') AS Result;
輸出
執行上述查詢後,將產生以下輸出 -
+--------+ | Result | +--------+ | 12345 | +--------+
示例
你還可以將表列作為引數傳遞給TRIM()函式,以從列的內容中移除所有空格。假設我們使用CREATE語句建立了一個名為Customers的表,如下所示 -
CREATE TABLE CUSTOMERS( ID INT NOT NULL, FIRST_NAME VARCHAR (20), LAST_NAME VARCHAR(20), AGE INT NOT NULL, ADDRESS CHAR (25) , SALARY DECIMAL (18, 2));
現在讓我們使用INSERT語句在客戶表中插入四條記錄,如下所示 -
INSERT INTO CUSTOMERS VALUES (1, 'Ramesh','KUMAR', 32, 'Ahmedabad', 2000.00 ); INSERT INTO CUSTOMERS VALUES (2, 'Khilan','Verma', 25, 'Delhi', 1500.00 ); INSERT INTO CUSTOMERS VALUES (3, 'kaushik','Gupta', 23, 'Kota', 2000.00 ); INSERT INTO CUSTOMERS VALUES (4, 'Chaitali','Pal', 25, 'Mumbai', 6500.00 );
以下 SQL 查詢將移除Customers表中LAST_NAME列值的開頭和結尾的所有空格實體 -
SELECT ID, FIRST_NAME, TRIM(LAST_NAME) AS TRIM_LAST_NAME FROM CUSTOMERS;
輸出
以下是上述查詢的輸出 -
+----+------------+----------------+ | ID | FIRST_NAME | TRIM_LAST_NAME | +----+------------+----------------+ | 1 | Ramesh | KUMAR | | 2 | Khilan | Verma | | 3 | kaushik | Gupta | | 4 | Chaitali | Pal | +----+------------+----------------+