日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

ABAP SQL 截取字段值、去掉前导零连表匹配查询

發布時間:2023/12/31 数据库 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ABAP SQL 截取字段值、去掉前导零连表匹配查询 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

應用場景:A表a字段取值后面四位與B表b字段進行匹配連表,假設要把工廠作為供應商查詢。

方法有兩種
1.截取法,知道數據的固定位數。
官方解釋:SUBSTRING( arg, pos, len ) ,Substring arg from the position pos with length len. pos and len must be specified so that the substring is within arg.
翻譯:長度為len的位置pos的子字符串arg。Pos和len必須指定,以便子字符串在arg內。
2.去零法,位數不固定。
官方解釋: LTRIM( arg, char ), String with the content of arg in which all trailing blanks and leading characters are removed that match the character in char. A blank in char is significant.
翻譯:內容為arg的字符串,刪除所有與char中字符匹配的尾隨空格和前導字符。char中的空白是重要的。

截取法源代碼

"工廠連接為供應商 SELECTmarc~werks,marc~matnr,l~lifnrFROM marc "substring 供應商號 第七位開始取值4位 與 工廠匹配LEFT JOIN lfa1 AS l ON SUBSTRING( l~lifnr,7,4 ) EQ marc~werks WHERE marc~werks = '7000'INTO TABLE @DATA(lt_alv)UP TO 10 ROWS. IF sy-subrc = 0.cl_demo_output=>display( lt_alv ). ENDIF.

截取法結果圖
工廠與供應商的后四位進行匹配連表結果。
除了7000供應商還有其他包含7000的供應商也出來了。

去零法源代碼

SELECTmarc~werks,marc~matnr,l~lifnrFROM marc "LTRIM 供應商號 前導零去掉,與工廠匹配LEFT JOIN lfa1 AS l ON ltrim( l~lifnr, '0' ) EQ marc~werks WHERE marc~werks = '7000'INTO TABLE @DATA(lt_LTRIM)UP TO 10 ROWS. IF sy-subrc = 0.cl_demo_output=>display( lt_LTRIM ). ENDIF.

去零法結果圖
只取值的到7000的供應商。

注意點
這兩種方法,都有相對應的使用場景,請靈活使用。

今天的分享到這里
分享使我快樂,我是寒武青鋒。

總結

以上是生活随笔為你收集整理的ABAP SQL 截取字段值、去掉前导零连表匹配查询的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。