SQL Editorでは、SQL文を直接実行することができる。
テーブル確認の際、複数のテーブルを結合してデータを見たいときに、それぞれのテーブルを絞り込みすることなく、SQL文で結合して出力できる。
SQL Editor
起動経路
以下のトランザクションで実行が可能。恐らく、同じ機能であるが、ECCかS/4によって起動できる/できないが違ったり、SQL Editor以外の機能が使える/使えない、といった細かな違いがある様子。
- DB02
- DBACOCKPIT
- ST04
トランザクション起動後、診断>SQL Editor(ECCだと、SQLコマンドエディタ)で起動する。
使い方
画面中央の「入力クエリ」にSQL文を入力し、「実行」を押下する。すると「結果」タブに実行結果が表示される。
例えば、以下のSQLを使えば、該当伝票の伝票ヘッダ(BKPF)と伝票明細(BSEG)を結合したViewを表示できる。
SELECT *
FROM BSEG
INNER JOIN BKPF ON
BSEG.MANDT = BKPF.MANDT
AND BSEG.BUKRS = BKPF.BUKRS
AND BSEG.GJAHR = BKPF.GJAHR
AND BSEG.BELNR = BKPF.BELNR
WHERE
BSEG.MANDT = 'クライアント'
AND BSEG.BELNR = '伝票番号'
※クライアントと伝票番号は、環境に合わせて入力する。
コメントアウト
/* コメントアウトする文字 */
--これ以下をコメントアウトする(「--」の行以降すべてがコメントアウト)
複数選択
WHERE BSEG.BELNR IN ('伝票番号1', '伝票番号2') /* IN句で指定 */
テーブルAとテーブルBを結合し、Bにあるものの中からAを抽出 ※EXISTS
SELECT *
FROM TABLE-A AS A
WHERE EXISTS(
SELECT * FROM TABLE-B AS B /* SELECT 1 の方がいいかも */
WHERE A.伝票番号 = B.伝票番号 /* 適当な結合条件を記載 */
AND A.伝票明細 = B.伝票明細 /* 適当な結合条件を記載 */
AND B.MANDT = 'クライアント' /* テーブルBの抽出条件 */
AND B.伝票番号 = '伝票番号' /* テーブルBの抽出条件 */
)
AND A.適当な項目 = 'XXXXX' /* テーブルAの抽出条件 */
参考
▼プログラム実行時のメモリ消費を調べる方法

プログラム実行時のメモリ消費を調べる方法
プログラム実行時のメモリ消費を調べる方法
▼How to run SQL Queries Directly on SAP Database
How to run SQL Queries Directly on SAP Database | SAP Blogs
Hi, If you ever wanted to write SQL queries to read/analyze data from SAP tables, then this post will be very useful for you. To run SQL queries directly, you n...
▼SQL editor for SAP: the missing piece from the ABAP development workbench
SQL editor for SAP: the missing piece from the ABAP development workbench
コメント