DB2 SQL 查询 Trim 里面 trim
DB2 SQL Query Trim inside trim
我正在将一些 SQL 查询转换为 C# 代码,现在我无法理解以下查询。
到目前为止,我对以下查询的理解是:如果 PREFIX
在 0
到 99
之间,则 trim PREFIX
,但是 || '-' ||
是什么意思?是指这里?我对第3行的理解是在完成第2行的trim函数后,再做一个trim,但我也不认识第3行的语法。这是 DB2。
RETURN CASE WHEN PREFIX BETWEEN '00' AND '99' //line 1
THEN TRIM(PREFIX) || '-' || //line 2
TRIM(TRIM(L '0' FROM DIGITS(CLNUMBER))) //line 3
您的代码执行以下操作。
第 1 行:如果您的前缀介于 '00'
和 '99'
之间
第 2 行:然后 trim 前缀中的空格,然后追加 -
第 3 行:然后通过先从 CLNUMBER
中删除前导 0
来追加 CLNUMBER
您可以查找 TRIM
函数 here
的语法
DIGITS(CLNUMBER)
returns 存储在 CLNUMBER 中的数字作为带前导零的字符串。
TRIM(L '0' FROM something)
从某些内容中删除前导零。
TRIM(something)
从某些内容中删除前导和训练空白。
- ||连接字符串。
PREFIX 是一个字符串。如果它包含两位数,则完成一些处理:
- 首先你得到那个数字修剪,但由于条件不能有空白,所以你得到原始数字字符串,例如'12'。 (该条件适用于“01”但忽略“1”或“1”。)
- 然后添加'-',所以你有'12-'。
- 然后您将获得 CLNUMBER 作为字符串,其中删除了前导零以及前导和训练空白。假设 CLNUMBER 包含“0345”,那么您将得到“345”。
- 然后这也被连接起来,你最终得到'12-345'。
或者我们可以使用 as CAST( STRING_NAME as VARCHAR(no as per required) ) 这适用于删除固定 no
的尾随空格
我正在将一些 SQL 查询转换为 C# 代码,现在我无法理解以下查询。
到目前为止,我对以下查询的理解是:如果 PREFIX
在 0
到 99
之间,则 trim PREFIX
,但是 || '-' ||
是什么意思?是指这里?我对第3行的理解是在完成第2行的trim函数后,再做一个trim,但我也不认识第3行的语法。这是 DB2。
RETURN CASE WHEN PREFIX BETWEEN '00' AND '99' //line 1
THEN TRIM(PREFIX) || '-' || //line 2
TRIM(TRIM(L '0' FROM DIGITS(CLNUMBER))) //line 3
您的代码执行以下操作。
第 1 行:如果您的前缀介于 '00'
和 '99'
第 2 行:然后 trim 前缀中的空格,然后追加 -
第 3 行:然后通过先从 CLNUMBER
中删除前导 0
来追加 CLNUMBER
您可以查找 TRIM
函数 here
DIGITS(CLNUMBER)
returns 存储在 CLNUMBER 中的数字作为带前导零的字符串。TRIM(L '0' FROM something)
从某些内容中删除前导零。TRIM(something)
从某些内容中删除前导和训练空白。- ||连接字符串。
PREFIX 是一个字符串。如果它包含两位数,则完成一些处理:
- 首先你得到那个数字修剪,但由于条件不能有空白,所以你得到原始数字字符串,例如'12'。 (该条件适用于“01”但忽略“1”或“1”。)
- 然后添加'-',所以你有'12-'。
- 然后您将获得 CLNUMBER 作为字符串,其中删除了前导零以及前导和训练空白。假设 CLNUMBER 包含“0345”,那么您将得到“345”。
- 然后这也被连接起来,你最终得到'12-345'。
或者我们可以使用 as CAST( STRING_NAME as VARCHAR(no as per required) ) 这适用于删除固定 no
的尾随空格