首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

DB2 常用字串函數詳解(一):VALUE、COALESCE、LENGTH、大小寫轉換、去空白、LEFT/RIGHT、CONCAT

     編輯:DB2 教學

前言

專案遷移至 DB2 時,常需快速掌握其內建函數用法。本文整理 DB2 核心字串函數,包含空值處理、長度計算、大小寫轉換、修剪空白、左右擷取與串接,附語法與範例供參考。

1. VALUE 函數:空值替代(DB2 專有)

語法: VALUE(EXPRESSION1, EXPRESSION2)

說明: 若第一個參數非 NULL 則返回該值,否則返回第二個參數。功能類似 COALESCE 或 IFNULL,但為 DB2 早期專有函數,新專案建議改用標準的 COALESCE。

範例:

-- 若 ID 為 NULL 則回傳空字串,否則回傳 ID
SELECT VALUE(ID, '') FROM T1;

2. COALESCE 函數:標準空值處理

語法: COALESCE(ARG1, ARG2, ...)

說明: 返回參數列表中第一個非 NULL 的值。支援多參數,符合 ANSI SQL 標準,跨資料庫可攜性較佳。

3. LENGTH 函數:計算字串長度

語法: LENGTH(ARG)

說明: 返回字串的位元組長度。對於多位元組字元集(如 UTF-8),一個中文字可能佔 3 位元組,需注意與字元數的差異。

範例:

SELECT LENGTH(NAME) FROM T1;

4. LCASE / LOWER 函數:轉小寫

語法: LCASE(STR) 或 LOWER(STR)

說明: 將字串轉為小寫。兩者功能相同,LOWER 為標準寫法。

範例:

SELECT LCASE(NAME), LOWER(NAME) FROM T1;

5. UCASE / UPPER 函數:轉大寫

語法: UCASE(STR) 或 UPPER(STR)

說明: 將字串轉為大寫。建議統一使用 UPPER。

範例:

SELECT UCASE(NAME), UPPER(NAME) FROM T1;

6. LTRIM / RTRIM 函數:修剪空白

語法: LTRIM(STR)、RTRIM(STR)

說明: 分別移除字串左側/右側的空白字元。DB2 無內建 TRIM(兩側同修),需組合使用 LTRIM(RTRIM(STR))。

範例:

SELECT LTRIM(NAME), RTRIM(NAME) FROM T1;

7. LEFT / RIGHT 函數:左右擷取

語法: LEFT(ARG, LENGTH)、RIGHT(ARG, LENGTH)

說明: 分別返回字串最左側或最右側指定長度的子字串。引數可為 CHAR 或二進位字串。

範例:

SELECT LEFT(NAME, 2), RIGHT(NAME, 2) FROM T1;

8. CONCAT 函數:字串串接

語法: CONCAT(ARG1, ARG2)

說明: 串接兩個字串。等同於 ARG1 || ARG2,後者支援多字串鏈接,更彈性。

小結

這些函數是 DB2 日常開發的基石。特別注意 VALUE 為舊版語法,新代碼請優先使用 COALESCE;修剪空白需組合 LTRIM/RTRIM;串接慣用 || 運算子以利閱讀與擴充。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved