1. 程式人生 > >簡單介紹幾個CDS檢視字串函式

簡單介紹幾個CDS檢視字串函式

更多內容關注公眾號:SAPtechnical 

更多精彩請關注公眾號,不要錯過精彩內容哦。

如果你覺得文章還不錯,請推薦給你的朋友吧。

今天來了解一下幾個簡單的CDS檢視字串函式,系統環境請參考《如何建立CDS檢視》。

以下是ABAP CDS檢視中的字串相關函式介紹,請參考。

1、CONCAT(arg1, arg2)

解析:CONCAT(arg1,agr2)字串函式可用於連線兩個字串。

@AbapCatalog.sqlViewName: 'ZCDS_STR_FUN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'String Functions'
define view Zcds_Sql_Func as select from kna1 {

   // CONCATENATE name1 & name2 
   CONCAT( kna1.name1, kna1.name2 ) as full_name
}

2、CONCAT_WITH_SPACE(arg1, arg2, spaces)

解析:此字串函式用於將兩個字串與空格連線。 引數arg1和arg2之間的空格數在spaces中指定。

@AbapCatalog.sqlViewName: 'ZCDS_STR_FUN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'String Functions'
define view Zcds_Sql_Func as select from kna1 {

   // CONCATENATE name1 & name2 with 4 space
   CONCAT_WITH_SPACE( kna1.name1, kna1.name2, 4 ) as full_name
}

3、SUBSTRING(arg, pos, len)

解析:此函式從長度為len的位置pos獲取arg的子字串。

@AbapCatalog.sqlViewName: 'ZCDS_STR_FUN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'String Functions'
define view Zcds_Sql_Func as select from kna1 {
   
   // To get substring for a given string
   SUBSTRING( kna1.name1, 2, 10) as name
}

4、LENGTH(arg)

解析:此函式返回字串中的字元數,該字串作為引數arg傳遞。 並忽略了尾部空白。

@AbapCatalog.sqlViewName: 'ZCDS_STR_FUN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'String Functions'
define view Zcds_Sql_Func as select from kna1 {
   
   // To get length for a given string
   LENGTH( kna1.name1 ) as name_length
}

5、LEFT(arg, len) & RIGHT(arg, len)

LEFT(arg,len) - 此函式返回字串的左側部分,該部分作為長度為len的引數arg傳遞。

RIGHT(arg,len) - 此函式返回字串的右側部分,作為長度為len的引數arg傳遞。

注意:尾部空白被忽略

@AbapCatalog.sqlViewName: 'ZCDS_STR_FUN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'String Functions'
define view Zcds_Sql_Func as select from kna1 {
   
   // To get length for a given string     
   LEFT( kna1.name1, 3) as name_left,
   RIGHT( kna1.name1, 3) as name_right,
   kna1.name1
}

6、LTRIM(arg, char) & RTRIM(arg, char)

LTRIM(arg,char) - 此函式刪除與引數char匹配的尾隨空格和前導字元。

RTRIM(arg,char) - 此函式刪除與引數char匹配的尾隨空白和尾隨字元。

@AbapCatalog.sqlViewName: 'ZCDS_STR_FUN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'String Functions'
define view Zcds_Sql_Func as select from kna1 {
   
   // Removes the trailing blanks and character 
   LTRIM( kna1.name1, 'L') as name_lt,
   RTRIM( kna1.name1, 'T') as name_rt    
}