<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>オープンSQL | ビズドットオンライン</title>
	<atom:link href="https://it-biz.online/tag/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3sql/feed/" rel="self" type="application/rss+xml" />
	<link>https://it-biz.online</link>
	<description></description>
	<lastBuildDate>Thu, 06 Jul 2023 09:10:27 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://it-biz.online/wp-content/uploads/2019/10/cropped-4a332f05ade4ac7bb3c46c472cb5eac8-32x32.png</url>
	<title>オープンSQL | ビズドットオンライン</title>
	<link>https://it-biz.online</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【ABAP】オープンSQL/ネイティブSQLの違いを３分で</title>
		<link>https://it-biz.online/sap/opensql-nativesql/</link>
					<comments>https://it-biz.online/sap/opensql-nativesql/#comments</comments>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Mon, 01 Mar 2021 01:00:00 +0000</pubDate>
				<category><![CDATA[ABAP]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[オープンSQL]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=761</guid>

					<description><![CDATA[オープンSQL（OpenSQL）とネイティブSQL（NativeSQL）とは何か？何が違うのか？ 本ページでは、ABAPにおけるデータベース操作の際に必要となるオープンSQL/ネイティブSQLという基本知識について初心者 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>オープンSQL（OpenSQL）とネイティブSQL（NativeSQL）とは何か？何が違うのか？</p>



<p>本ページでは、ABAPにおける<strong>データベース操作の際に必要となるオープンSQL/ネイティブSQLという基本知識</strong>について初心者向けに分かりやすく解説します。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>初心者のうちはオープンSQLだけ知っておけば困ることはありませんが、ABAPerとして知っておきたい重要な内容です。</p>
</div></div>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-check"><span class="label-box-label-text block-box-label-text box-label-text">このページで学べる内容</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>オープンSQLとは？</li>



<li>データベースインターフェースの仕組み</li>



<li>ネイティブSQLとの違い</li>



<li>オープンSQLのメリット・デメリット</li>
</ul>
</div>
</div></div>



<p>SAPエンジニアを目指す方であれば、<strong><span class="marker-under">知っておきたい重要知識</span></strong>です。是非最後までご覧ください。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">オープンSQL（OpenSQL）とは？</a><ol><li><a href="#toc2" tabindex="0">データベースインターフェースとは？</a></li></ol></li><li><a href="#toc3" tabindex="0">オープンSQL：５つのメリット</a><ol><li><a href="#toc4" tabindex="0">メリット１：データベースに依存しないSQL</a></li><li><a href="#toc5" tabindex="0">メリット２：テーブルバッファリングが利用可能</a></li><li><a href="#toc6" tabindex="0">メリット３：クライアントを意識する必要がない</a></li><li><a href="#toc7" tabindex="0">メリット４：ABAPの構文チェック機能が利用できる</a></li><li><a href="#toc8" tabindex="0">メリット５：LUW</a></li></ol></li><li><a href="#toc9" tabindex="0">ネイティブSQLのメリット</a><ol><li><a href="#toc10" tabindex="0">ネイティブSQLのメリット：オープンSQLではできないことができる</a></li></ol></li><li><a href="#toc11" tabindex="0">SAP / ABAPを１から学習したい方は</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">オープンSQL（OpenSQL）とは？</span></h2>



<p>オープンSQL（OpenSQL）とは、ABAPとデータベース間に存在する<strong><span class="marker-under">データベースインターフェース</span></strong>という機能を介してデータベースを操作するSQLのことです。</p>



<figure class="wp-block-image aligncenter is-resized"><img fetchpriority="high" decoding="async" src="https://it-biz.online/wp-content/uploads/2019/02/37b0372c73fa27e3c1c73f34708ce298.png" alt="" class="wp-image-764" width="363" height="308" srcset="https://it-biz.online/wp-content/uploads/2019/02/37b0372c73fa27e3c1c73f34708ce298.png 481w, https://it-biz.online/wp-content/uploads/2019/02/37b0372c73fa27e3c1c73f34708ce298-300x255.png 300w, https://it-biz.online/wp-content/uploads/2019/02/37b0372c73fa27e3c1c73f34708ce298-252x214.png 252w, https://it-biz.online/wp-content/uploads/2019/02/37b0372c73fa27e3c1c73f34708ce298-186x158.png 186w" sizes="(max-width: 363px) 100vw, 363px" /><figcaption class="wp-element-caption">OpenSQL vs NativeSQL</figcaption></figure>



<p>ネイティブSQLとの違いは、<strong>データベースインターフェースを介すか介さないかの違い。この1点のみです。</strong></p>



<h3 class="wp-block-heading"><span id="toc2">データベースインターフェースとは？</span></h3>



<p>それでは、データベースインターフェースとは一体どのような機能なのか？簡単に言えば、データベースインターフェースとは、<strong><span class="marker-under">アプリケーションサーバとデータベースサーバの「翻訳機」のような機能</span></strong>です。</p>



<p>SAPの "データベース" と一言にいっても、SAPがサポートしているデータベースは多岐にわたります。代表的なもので「Microsoft SQL Server 」や「Oracle 」などがありますが、その他にもマイナーなデータベースまで幅広く利用することが可能です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>したがって、<strong>本来はそれぞれのデータベースサーバの分類に応じて発するべき命令（SQL文）も製品に合わせて微妙に調整が必要</strong>になります。</p>
</div></div>



<p><strong>そんな面倒を解決してくれるのが<span class="marker-under">データベースインターフェース</span>です</strong>。データベースインターフェースは、アプリケーションサーバから発せられる命令を「<strong>どのようなデータベースにも通じる言語へと翻訳</strong>」します。</p>



<p>どんなデータベースサーバを使っていたとしても、このデータベースインターフェースを介せば（つまりOpenSQLを利用すれば）、特段データベースサーバの分類を意識せずに目的とするデータを取ってきたり、編集することが可能となります。</p>



<h2 class="wp-block-heading"><span id="toc3">オープンSQL：５つのメリット</span></h2>



<p>ABAPにおける<a href="https://it-biz.online/sap/select-abc/">SELECT文</a>や<a href="https://it-biz.online/sap/insert/">INSERT文</a>などはすべてオープンSQLに分類されます。</p>



<p>わざわざネイティブSQLを利用するメリットがあまり存在しないことから、通常はオープンSQLでデータベース操作を行う場合が圧倒的多数。ここでは、オープンSQLとネイティブSQLの違いを比較しながら、オープンSQLのメリットを解説します。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-edit"><span class="label-box-label-text block-box-label-text box-label-text">オープンSQLのメリット</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-star-o block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>データベースに依存しないSQLの記述が可能</li>



<li>テーブルバッファリングが利用可能</li>



<li>クライアントを意識する必要がない</li>



<li>ABAPの構文チェック機能が利用できる</li>



<li>データの整合性を担保できる（LUW）</li>
</ul>
</div>
</div></div>



<p>１つ１つ、メリットを深堀して解説します。</p>



<h3 class="wp-block-heading"><span id="toc4">メリット１：データベースに依存しないSQL</span></h3>



<p>まず、１つ目。オープンSQLには、<strong>データベースに依存せずに命令を発することができる</strong>という利点があります。</p>



<p>オープンSQLでは、発せられた命令は<strong>データベースインターフェースを通して自動的に各データベースに合致するSQL文に翻訳</strong>されてから、データベースサーバに送信されます。</p>



<figure class="wp-block-image aligncenter is-resized"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2019/02/37b0372c73fa27e3c1c73f34708ce298.png" alt="画像に alt 属性が指定されていません。ファイル名: 37b0372c73fa27e3c1c73f34708ce298.png" width="310" height="263"/></figure>



<p>したがって、オープンSQLで動作するABAPプログラムはデータベースに依存しません。後述しますが、ネイティブSQLのようにわざわざデータベースごとの調整を行う必要がありません。</p>



<h3 class="wp-block-heading"><span id="toc5">メリット２：テーブルバッファリングが利用可能</span></h3>



<p>オープンSQLを利用すれば、バッファリングされたテーブルからデータを読み込むことができます。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>逆に言えば、ネイティブSQLの場合はテーブルバッファリングの仕組みを利用することができないということです。</p>
</div></div>



<p>したがってデータベースサーバの負荷を減らし、読み取り速度を大幅に向上させることができます。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-question-circle"><span class="label-box-label-text block-box-label-text box-label-text">テーブルバッファリングとは？</span></div><div class="label-box-content block-box-content box-content">
<p>簡単に言えば、テーブルバッファリングとは、<strong><span class="marker-under">データベース上のレコードをアプリケーションサーバー上にミラーリング（複製）しておくこと。</span></strong></p>



<p>データベースサーバで処理を行う必要がなく、アプリケーションサーバー上でレコードの処理を行うので、パフォーマンス（処理速度）が大幅に向上するSAPの仕組みです。</p>



<p>詳しくは、以下の記事で詳しく解説しておりますので合わせてご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/table-buffer/" title="【SAP】テーブルのバッファリングを３分で解説" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/02/table-buffer-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/02/table-buffer-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/02/table-buffer-240x135.png 240w, https://it-biz.online/wp-content/uploads/2019/02/table-buffer-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【SAP】テーブルのバッファリングを３分で解説</div><div class="blogcard-snippet internal-blogcard-snippet">SAPにおけるテーブルバッファリングの仕組みを解説します。単一レコードバッファ/ジェネリックバッファ/フルバッファの違い、テーブルバッファリング利用時の注意点やTipsを初心者向けに分かりやすく解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div></div>



<h3 class="wp-block-heading"><span id="toc6">メリット３：クライアントを意識する必要がない</span></h3>



<p>OpenSQLのメリットの２つ目は、<strong>クライアントを意識する必要がない</strong>という点です。</p>



<p>SAPシステムは複数のクライアントで構成されているため、本来であればSQLもクライアントを意識して発行する必要があります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>つまり、どのクライアントのデータなのか？を意識する必要があるということ・・・。</p>



<p>その区別を行う必要がない点でOpenSQLに利があります。</p>
</div></div>



<p>OpenSQLを利用すれば、明示的に処理対象のクライアントを指定しなければ、自動的にプログラムが実行されるクライアントに紐づくデータの処理（自動クライアント処理）が行われます。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-edit"><span class="label-box-label-text block-box-label-text box-label-text">クライアント</span></div><div class="label-box-content block-box-content box-content">
<p>SAPでは、１つのシステム上に複数の環境を定義することができます。この複数の環境をSAPでは<strong><span class="marker-under">クライアント</span></strong>と呼びます。</p>



<figure class="wp-block-image aligncenter"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2019/11/image-19.png" alt="１つのシステム上に複数の環境を定義することができます。この複数の環境をSAPではクライアントと呼びます"/></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/client/" title="５分で理解するSAPのシステム構成【移送とは？】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/11/7e1bf0c38f4cae1f92fefb52bd536bb6-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/11/7e1bf0c38f4cae1f92fefb52bd536bb6-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/11/7e1bf0c38f4cae1f92fefb52bd536bb6-240x135.png 240w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">５分で理解するSAPのシステム構成【移送とは？】</div><div class="blogcard-snippet internal-blogcard-snippet">【SAP初心者向け】SAPのシステム構成を１から解説します。システムランドスケープとは？クライアントとは（クライアント依存とクライアント非依存の違いは）？移送とは何か？このような疑問をお持ちの方は必見です。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div></div>



<p>ネイティブSQLを利用する場合、SELECTしたいデータはどのクライアントのデータであるか？を必ず指定する必要があります。</p>



<h3 class="wp-block-heading"><span id="toc7">メリット４：ABAPの構文チェック機能が利用できる</span></h3>



<p>オープンSQLはABAP言語の一部という位置づけです。つまり、ABAPの構文チェック機能を利用することが可能です。（その分コーディングミスが減ります。）</p>



<p>一方で、ネイティブSQLは、ABAPの一部という位置づけではありません。ネイティブSQLを利用する際は、ABAP命令で「ネイティブSQL用」のプログラム領域を作り、その領域の中でネイティブSQLが動作する形となるため、<strong><span class="marker-under">ネイティブSQLでは構文チェック機能を利用することができません</span></strong>。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p>厳密に説明すると、通常のABAP命令とOpenSQLの構文ルールは厳密には異なります。</p>



<p>ABAP命令では許容された文法が、OpenSQLではエラーとなる場合も存在します。</p>
</div>



<h3 class="wp-block-heading"><span id="toc8">メリット５：LUW</span></h3>



<p>OpenSQLを利用することで、データの整合性の維持が比較的容易になります。SAPが用意しているデータ担保の仕組みを介することが可能です。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label"><span class="label-box-label-text block-box-label-text box-label-text">LUWとは？</span></div><div class="label-box-content block-box-content box-content">
<p>LUW（作業論理単位）とは<strong>データが１つの状態からまた別の状態に移る間のこと</strong>を指します。</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="765" height="269" src="https://it-biz.online/wp-content/uploads/2021/04/image-1.png" alt="" class="wp-image-5079" srcset="https://it-biz.online/wp-content/uploads/2021/04/image-1.png 765w, https://it-biz.online/wp-content/uploads/2021/04/image-1-300x105.png 300w, https://it-biz.online/wp-content/uploads/2021/04/image-1-500x176.png 500w" sizes="(max-width: 765px) 100vw, 765px" /><figcaption class="wp-element-caption">LUW</figcaption></figure>



<p>LUWは、これ以上分割することができないデータベース更新の単位。つまり、<strong>データベースは「変更前」の状態か「変更後」の状態のいずれかしか保持せず</strong>、例えば<a href="https://it-biz.online/sap/insert/">INSERT命令</a>・<a href="https://it-biz.online/sap/delete/">DELETE命令</a>等でレコードを追加・削除中にエラーが起きて中途半端にデータ更新が行われた ”中間状態” にはなりえないという概念です。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc9">ネイティブSQLのメリット</span></h2>



<p>では、逆にネイティブSQLを利用するのはどのようなシーンでしょうか？</p>



<p>ネイティブSQLを利用するには、データベース製品ごとの特性や制約を踏まえてコーディングする必要があるため、基本は避けたい記述方法ですが、<strong><span class="marker-under">実はネイティブSQLでしか実現できないことも存在</span></strong>します。</p>



<p>その代表例が、<a href="https://it-biz.online/sap/abap-dictionary/">ABAPディクショナリ</a>で定義していないテーブルの操作です。</p>



<h3 class="wp-block-heading"><span id="toc10">ネイティブSQLのメリット：オープンSQLではできないことができる</span></h3>



<p>例えば、SAPと他システムが共存しているような業務システムの場合。</p>



<p>ネイティブSQLを利用すれば、直接他システムのデータベースを操作することが可能になります。<strong>システム間のインターフェースや、データレプリケーションなどの機能を実現する場合にネイティブSQLが利用されます。</strong></p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>直接対抗システムのデータベースにINSERTしたりDELETEしたり、ということができます。</p>
</div></div>



<p>つまり、<a href="https://it-biz.online/sap/abap-dictionary/">ABAPディクショナリ</a>で登録されていないテーブルに対する操作を行う１つの方法としてネイティブSQLが利用されるということ。ただし、やはりそれ以外の場合では、できるだけオープンSQLを利用するのが簡単ですし可読性の高いソースコードとなるため、基本はオープンSQLを利用するのが鉄則です。</p>



<h2 class="wp-block-heading"><span id="toc11">SAP / ABAPを１から学習したい方は</span></h2>



<p><!-- wp:cocoon-blocks/balloon-ex-box-1 {"id":"1","icon":"https://it-biz.online/wp-content/uploads/2023/06/man.png"} --></p>
<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box">
<div class="speech-person">
<figure class="speech-icon"><img decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" /></figure>
<div class="speech-name"></div>
</div>
<div class="speech-balloon">
<p><!-- wp:paragraph --></p>
<p>初めてABAPを勉強するのは結構難しいですよね。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>でもその悩みを抱えているのは一人じゃありません。全てのABAP使いが同じ道を進んできました。</p>
<p><!-- /wp:paragraph --></p>
</div>
</div>
<p><!-- /wp:cocoon-blocks/balloon-ex-box-1 --></p>
<p><!-- wp:paragraph --></p>
<p>ABAPをはじめとするプログラミングスキルを武器に、<strong><span class="marker-under">時間と場所に捉われない自由な生き方</span></strong>を目指してみませんか？</p>
<div class="good-box common-icon-box">
<div class="speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf">
<div class="speech-person">
<figure class="speech-icon"><img loading="lazy" decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" width="385" height="424" /></figure>
</div>
<div class="speech-balloon">
<p><strong>あなたの技術、もっと価値ある場所で活かしませんか？<br />
<span style="font-size: 20px;"><span style="color: #ff6600;">SAPエンジニア</span>のキャリア支援はこちらから↓</span></strong></p>
</div>
</div>
<p><strong><span class="badge">No.1　&gt;</span>　<span style="font-size: 18px;"><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341">外資系・IT業界などハイクラスの転職なら【アクシスコンサルティング】</a></span></strong><span class="marker-under"><strong><span style="font-size: 18px;"><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341" width="1" height="1" /></span><br />
</strong></span>4人に1人のコンサルタントが選ぶパートナー！<br />
ビッグ4やアクセンチュアへの転職を実現し<span class="marker-under"><strong>年収1000万</strong></span>へ。</p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.2　&gt;</span>　<a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">IT・Web転職特化エージェント【レバテックキャリア</a><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">】</a></strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">サービス利用者数<strong>20万人</strong>突破。</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
平均<strong>年収アップ率77%</strong>であなたの転職成功を保証します。</span></span></p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.3　&gt;</span>　</strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=3134203&amp;p_id=3802&amp;pc_id=9376&amp;pl_id=52943">リクルートエージェント</a><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">＼転職支援実績NO.1／</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
応募が殺到しすぎるが故に・・・非公開にせざるを得ない魅力的な求人が多数！<br />
</span></span></p>
</div>

<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph {"align":"center"} --></p>
<p class="has-text-align-center" style="text-align: center;"><span class="badge-green">読者料典</span>　<a href="https://it-biz.online/sap/abap-abc/">【完全無料】ABAP：学習カリキュラム</a>　←こちらから！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>

]]></content:encoded>
					
					<wfw:commentRss>https://it-biz.online/sap/opensql-nativesql/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>【ABAP】外部結合（SELECT ~ OUTER JOIN）を３分で解説</title>
		<link>https://it-biz.online/sap/outer-join/</link>
					<comments>https://it-biz.online/sap/outer-join/#comments</comments>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Mon, 01 Mar 2021 03:00:00 +0000</pubDate>
				<category><![CDATA[ABAP]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[オープンSQL]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=945</guid>

					<description><![CDATA[ABAPのオープンSQL―SELECT文で外部結合を行うテクニックについて解説します。 以上のような疑問にお答えします。 ABAPerであれば知らないと恥ずかしい基本知識です。是非最後までご覧ください。 目次 前提：テー [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>ABAPのオープンSQL―<strong>SELECT文で外部結合を行うテクニックについて解説します</strong>。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>そもそもテーブル結合って何？</p>



<p>外部結合って？内部結合とは何が違うの？</p>
</div></div>



<p>以上のような疑問にお答えします。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-check"><span class="label-box-label-text block-box-label-text box-label-text">このページで学べる内容</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>前提：テーブル結合とは？</li>



<li>外部結合（OUTER JOIN）とは？―内部結合との違い</li>



<li>OUTER JOIN－構文ルール
<ul class="wp-block-list">
<li>LEFT OUTER JOIN</li>
</ul>
</li>
</ul>
</div>
</div></div>



<p>ABAPerであれば<strong><span class="marker-under">知らないと恥ずかしい基本知識</span></strong>です。是非最後までご覧ください。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p>本ページはABAPにおけるSELECT文の知識がある方向けの解説ページです。</p>



<p>SELECT文の意味やコーディング方法がイマイチ分かっていない・・・という方は初めに以下のページをご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/select-abc/" title="【ABAP】３分で理解できる！SELECT命令" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】３分で理解できる！SELECT命令</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】ABAPを学習中の方のためSELECT命令（オープンSQL）の使い方・構文ルールを分かりやすく解説します。サンプルコード付きでご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.26</div></div></div></div></a>
</div></figure>
</div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">前提：テーブル結合とは？</a></li><li><a href="#toc2" tabindex="0">外部結合（OUTER JOIN）とは？</a><ol><li><a href="#toc3" tabindex="0">外部結合：結合条件</a></li></ol></li><li><a href="#toc4" tabindex="0">内部結合との相違点</a><ol><li><a href="#toc5" tabindex="0">内部結合</a></li><li><a href="#toc6" tabindex="0">外部結合</a></li></ol></li><li><a href="#toc7" tabindex="0">外部結合（SELECT ~ LEFT OUTER JOIN）</a><ol><li><a href="#toc8" tabindex="0">外部結合（OUTER JOIN）サンプルコード</a></li></ol></li><li><a href="#toc9" tabindex="0">SAP / ABAPを１から学習したい方は</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">前提：テーブル結合とは？</span></h2>



<p>テーブル結合とは、その名の通り<strong>テーブルとテーブルを合体させること</strong>を言います。</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="476" src="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png" alt="" class="wp-image-5164" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-9-300x139.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-9-500x232.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-9-768x357.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-9-800x372.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-9.png 1098w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>１つのテーブルだけでは情報が足りないような場合に、別のテーブルから情報を引っ張ってきて別のテーブルを作ってあげるようなイメージです。例えば、上記の例では「役職ID」を基準に、テーブルAとテーブルBを結合しています。</p>



<p>テーブル結合には、内部結合と外部結合。２種類の結合パターンが存在しますが、<strong>本ページでは外部結合（OUTER JOIN）について解説</strong>しています。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-lightbulb"><span class="label-box-label-text block-box-label-text box-label-text"><strong>内部結合/外部結合</strong></span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>内部結合：両方のテーブルに存在するデータ同士をくっつける</li>



<li>外部結合：１つのテーブルを基準としてデータをくっつける</li>
</ul>
</div>
</div></div>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p>内部結合については、以下の記事で解説しておりますので、合わせてご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/internal-bond/" title="【ABAP】内部結合（SELECT ~ INNER JOIN）を３分で解説" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/03/INNER-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/03/INNER-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/03/INNER-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/03/INNER-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】内部結合（SELECT ~ INNER JOIN）を３分で解説</div><div class="blogcard-snippet internal-blogcard-snippet">ABAPのオープンSQL―SELECT文の内部結合を行うテクニックについて解説します。そもそも、内部結合って何？という方でも理解できるよう分かりやすく解説します。このページで学べる内容【前提】テーブル結合とは？内部結合（INNER JOIN）とは？外部結合（OUTER JOIN）との違いINNER ...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div>



<h2 class="wp-block-heading"><span id="toc2">外部結合（OUTER JOIN）とは？</span></h2>



<p>外部結合（OUTER JOIN）とは、<strong><span class="marker-under">１つのテーブルを基準として、他のテーブルから情報を引っ張ってくるようなイメージの結合テクニック</span></strong>です。</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="476" src="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png" alt="" class="wp-image-5164" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-9-300x139.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-9-500x232.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-9-768x357.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-9-800x372.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-9.png 1098w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>図で見てみると決して難しくはありませんね。</p>



<p>ここで「<strong>結合条件</strong>」について、解説しておきます。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc3">外部結合：結合条件</span></h3>



<p><strong>結合条件</strong>とは、テーブルAとテーブルBを結合させる条件のこと（<strong>何を基準にして２つのテーブルを合体させるか？</strong>）です。</p>



<p>例えば、テーブルAとテーブルB両方に存在する「<strong>役職ID</strong>」を結合条件として２つのテーブルをくっつけてみると、同じ「<strong>役職ID</strong>」をもつレコード同士が１つのレコードとして合体します。</p>



<div class="wp-block-cocoon-blocks-sticky-box blank-box block-box sticky">
<p class="has-text-align-center">テーブルA―役職ID　＝　テーブルB―役職ID</p>
</div>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="476" src="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png" alt="" class="wp-image-5164" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-9-300x139.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-9-500x232.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-9-768x357.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-9-800x372.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-9.png 1098w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>では、内部結合とは一体何が違うのでしょうか？</p>



<p>詳しく見ていきましょう。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc4">内部結合との相違点</span></h2>



<p><strong>２つのテーブルを結合させるという意味で両者は同一</strong>です。が、以下のような違いがあります。</p>



<h3 class="wp-block-heading"><span id="toc5">内部結合</span></h3>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center"><strong>両方のテーブルにレコードが存在する場合にのみ結合が行われる</strong></p>
</div>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="425" src="https://it-biz.online/wp-content/uploads/2021/05/image-10-1024x425.png" alt="" class="wp-image-5165" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-10-1024x425.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-10-300x125.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-10-500x208.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-10-768x319.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-10-800x332.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-10.png 1088w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>テーブルBには、役職ID「C」と「D」が存在しないので、テーブル結合が行われません。</p>



<h3 class="wp-block-heading"><span id="toc6">外部結合</span></h3>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center"><strong>両方のテーブルにレコードがなくても結合が行われる</strong></p>
</div>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="476" src="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png" alt="" class="wp-image-5164" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-9-1024x476.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-9-300x139.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-9-500x232.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-9-768x357.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-9-800x372.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-9.png 1098w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>テーブルBには、役職ID「C」と「D」が存在しませんが、結合後のテーブルにもちゃんと基準となる全てのレコードが存在しています。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>この微妙な違いを理解していないと、思わぬバグが出てきてしまうため、しっかりと学習しておきましょう！</p>
</div></div>



<p>ここからはABAPのSELECT文で外部結合（OUTER JOIN）を行う方法を解説します。</p>



<h2 class="wp-block-heading"><span id="toc7">外部結合（SELECT ~ LEFT OUTER JOIN）</span></h2>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT
  (結合テーブルX)~(取得項目),
  (結合テーブルX)~(取得項目),
            …
FROM
  (結合テーブル1)
LEFT OUTER JOIN
  (結合テーブル2)
ON
    (結合テーブル1)~(結合項目) = (結合テーブル2)~(結合項目)
AND (結合テーブル1)~(結合項目) = (結合テーブル2)~(結合項目)
AND (結合テーブル1)~(結合項目) = (結合テーブル2)~(結合項目)
INTO TABLE (内部テーブル名).</pre>



<p>結合テーブル1を基準テーブル（左テーブル）とし、結合テーブル2からレコードを引っ張ってくる場合のコードルールです。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p>外部結合には、「LEFT OUTER JOIN」を利用する方法と、「RIGHT OUTER JOIN」を利用する２つの書き方がありますが、「RIGHT OUTER JOIN」を利用する機会はほとんど存在しないため説明を省略します。</p>



<p>尚、LEFTとRIGHTの違いはどちらのテーブルを基準とするかが異なるだけで、<strong><span class="marker-under">LEFTとRIGHTを入れ替えれば結果は全く同一</span></strong>になります。</p>
</div>



<h3 class="wp-block-heading"><span id="toc8">外部結合（OUTER JOIN）サンプルコード</span></h3>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT
  CEPC~PRCTR
  CEPC~LOCK_IND
  CEPCT~KTEXT
FROM
  CEPC
LEFT OUTER JOIN
  CEPCT
ON
    CEPCT~SPRAS = SY-LANGU
AND CEPCT~PRCTR = CEPC~PRCTR
AND CEPCT~DATBI = CEPC~DATBI
AND CEPCT~KOKRS = CEPC~KOKRS
    INTO CORRESPONDING FIELDS OF PRS_PRC
WHERE CEPC~PRCTR =  LDF_PRCTR  "利益センタ
  AND CEPC~DATBI >= SY-DATUM.   "有効終了日</pre>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT
　BSEG~BELNR,       　　　　　　　　"取得項目：会計伝票番号
　BSEG~GJAHR,       　　　　　　　　"取得項目：会計年度
　BSEG~MWSKZ,       　　　　　　　　"取得項目：税コード
　T007S~TEXT1       　　　　　　　　"取得項目：税コードテキスト
FROM
  BSEG           　　　　　　　　   "取得元テーブル：会計伝票明細
LEFT OUTER JOIN
  T007S                            "取得元テーブル：税コード名
ON
    BSEG~MWSKZ  = T007S~MWSKZ   　 "結合条件：会社コード
AND T007S~KALSM = 'TAXJP'      　  "結合条件：決定表
INTO TABLE LIT_BSEG_T007S.         "取得項目を格納する内部テーブル</pre>



<p>内部結合も、外部結合もその概念さえ覚えてしまえば、難しいものではありません。あれ、ちょっとこれなんだっけ？と思ったら是非またこのページに戻って学習してみてください。</p>



<h2 class="wp-block-heading"><span id="toc9">SAP / ABAPを１から学習したい方は</span></h2>



<p><!-- wp:cocoon-blocks/balloon-ex-box-1 {"id":"1","icon":"https://it-biz.online/wp-content/uploads/2023/06/man.png"} --></p>
<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box">
<div class="speech-person">
<figure class="speech-icon"><img decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" /></figure>
<div class="speech-name"></div>
</div>
<div class="speech-balloon">
<p><!-- wp:paragraph --></p>
<p>初めてABAPを勉強するのは結構難しいですよね。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>でもその悩みを抱えているのは一人じゃありません。全てのABAP使いが同じ道を進んできました。</p>
<p><!-- /wp:paragraph --></p>
</div>
</div>
<p><!-- /wp:cocoon-blocks/balloon-ex-box-1 --></p>
<p><!-- wp:paragraph --></p>
<p>ABAPをはじめとするプログラミングスキルを武器に、<strong><span class="marker-under">時間と場所に捉われない自由な生き方</span></strong>を目指してみませんか？</p>
<div class="good-box common-icon-box">
<div class="speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf">
<div class="speech-person">
<figure class="speech-icon"><img loading="lazy" decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" width="385" height="424" /></figure>
</div>
<div class="speech-balloon">
<p><strong>あなたの技術、もっと価値ある場所で活かしませんか？<br />
<span style="font-size: 20px;"><span style="color: #ff6600;">SAPエンジニア</span>のキャリア支援はこちらから↓</span></strong></p>
</div>
</div>
<p><strong><span class="badge">No.1　&gt;</span>　<span style="font-size: 18px;"><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341">外資系・IT業界などハイクラスの転職なら【アクシスコンサルティング】</a></span></strong><span class="marker-under"><strong><span style="font-size: 18px;"><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341" width="1" height="1" /></span><br />
</strong></span>4人に1人のコンサルタントが選ぶパートナー！<br />
ビッグ4やアクセンチュアへの転職を実現し<span class="marker-under"><strong>年収1000万</strong></span>へ。</p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.2　&gt;</span>　<a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">IT・Web転職特化エージェント【レバテックキャリア</a><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">】</a></strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">サービス利用者数<strong>20万人</strong>突破。</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
平均<strong>年収アップ率77%</strong>であなたの転職成功を保証します。</span></span></p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.3　&gt;</span>　</strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=3134203&amp;p_id=3802&amp;pc_id=9376&amp;pl_id=52943">リクルートエージェント</a><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">＼転職支援実績NO.1／</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
応募が殺到しすぎるが故に・・・非公開にせざるを得ない魅力的な求人が多数！<br />
</span></span></p>
</div>

<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph {"align":"center"} --></p>
<p class="has-text-align-center" style="text-align: center;"><span class="badge-green">読者料典</span>　<a href="https://it-biz.online/sap/abap-abc/">【完全無料】ABAP：学習カリキュラム</a>　←こちらから！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>

]]></content:encoded>
					
					<wfw:commentRss>https://it-biz.online/sap/outer-join/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>【ABAP】UPDATE命令→レコード更新を３分で解説</title>
		<link>https://it-biz.online/sap/update/</link>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Sun, 22 Mar 2020 12:00:00 +0000</pubDate>
				<category><![CDATA[ABAP]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[オープンSQL]]></category>
		<category><![CDATA[プログラミング]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=1116</guid>

					<description><![CDATA[本ページでは、データベーステーブルのレコード更新を行うUPDATE命令の使い方を初心者向けに解説します。 SAPエンジニア/ABAPerを目指す方であれば知らないと恥ずかしい超・基本知識の１つです！是非最後までご覧くださ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>本ページでは、データベーステーブルのレコード更新を行う<strong><span class="marker-under">UPDATE命令</span></strong>の使い方を初心者向けに解説します。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>UPDATE命令は文字通り<strong>レコードの更新</strong>を行う命令です。利用シーンに応じていくつかコーディングパターンがあるので、１つ１つ丁寧に理解しておきましょう。</p>
</div></div>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-edit"><span class="label-box-label-text block-box-label-text box-label-text">このページで学べる内容</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-hand-o-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>UPDATE命令の構文ルール
<ul class="wp-block-list">
<li>UPDATE (DBテーブル) SET ~ WHERE</li>



<li>UPDATE (DBテーブル) FROM</li>
</ul>
</li>



<li>UPDATE命令の注意点・使い方</li>
</ul>
</div>
</div></div>



<p>SAPエンジニア/ABAPerを目指す方であれば<strong><span class="marker-under">知らないと恥ずかしい超・基本知識の１つ</span></strong>です！是非最後までご覧ください。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ABAP：UPDATE命令</a></li><li><a href="#toc2" tabindex="0">UPDATE命令：SETオプション</a><ol><li><a href="#toc3" tabindex="0">LOOP命令と組み合わせたUPDATE命令</a></li><li><a href="#toc4" tabindex="0">UPDATE命令の注意点：WHERE句での条件漏れ</a></li></ol></li><li><a href="#toc5" tabindex="0">UPDATE命令：FROMオプション</a></li><li><a href="#toc6" tabindex="0">UPDATE命令：リターンコード（システム項目）</a></li><li><a href="#toc7" tabindex="0">ビューに対する更新も可能</a></li><li><a href="#toc8" tabindex="0">SAP / ABAPを１から学習したい方は</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ABAP：UPDATE命令</span></h2>



<p><strong>UPDATE命令は、データベーステーブルのレコードを更新する命令</strong>です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>注意点は内部テーブルに対する更新は行えない・・・という点です。</p>



<p>内部テーブルの更新を行うには<a href="https://it-biz.online/sap/modify/"><strong>MODIFY命令</strong></a>を利用します。</p>
</div></div>



<p>UPDATE命令は更新したい項目を１つ１つ指定して更新する方法もあれば、構造や内部テーブルの値でDBテーブルを更新する方法もあります。</p>



<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-star-o block-box"><div class="iconlist-title">UPDATE文利用→２パターン</div>
<ul class="wp-block-list">
<li>UPDATE (DBテーブル) SET ~ WHERE ~</li>



<li>UPDATE (DBテーブル) FROM ~</li>
</ul>
</div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>このページでは、両方のコーディング方法をサンプルコード付きで解説します。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">UPDATE命令：SETオプション</span></h2>



<p>はじめにSETオプションを利用して更新する項目を個別に指定するパターンのコーディング方法を解説します。</p>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box"><div class="tab-caption-box-label block-box-label box-label fab-lightbulb"><span class="tab-caption-box-label-text block-box-label-text box-label-text">UPDATE命令：パターン①</span></div><div class="tab-caption-box-content block-box-content box-content">
<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">UPDATE  (DBテーブル) 
  SET   (DBテーブル)-(項目名) = "書き換えたい値"
  WHERE (条件).</pre>



<p><strong><span class="marker-under">WHERE句で指定した条件に合致するレコードを、SET句に記述した内容で更新（UPDATE）します。</span></strong></p>
</div></div>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>簡単なサンプルコードを見てみましょう。</p>
</div></div>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">UPDATE Y001
  SET  ZZ_NAME1  = 'UPDATE_TEST'      "文字列「UPDATE_TEST」"
       ZZ_NAME2  = SPACE              "ブランク"
  WHERE
       ZZ_NAME1  = 'SUZUKI'.</pre>



<p>上記のサンプルコードでは、WHEREオプションで「ZZ_NAME1」が「SUZUKI」となっているすべてのレコードに対して「ZZ_NAME1」を "UPDATE_TEST" に、「ZZ_NAME2」をブランクに置き換えています。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>決して難しい命令ではありませんね。</p>
</div></div>



<p>SETオプションを利用するコーディング方法だと、<strong><span class="marker-under">更新される項目と条件が分かりやすくなるというメリットがあります。</span></strong></p>



<h3 class="wp-block-heading"><span id="toc3">LOOP命令と組み合わせたUPDATE命令</span></h3>



<p>UPDATE命令は<a href="https://it-biz.online/sap/loop/">LOOP命令</a>と組み合わせて利用するパターンが多く存在します。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">LOOP AT LT_Y001 ASSIGNING &lt;LT_Y001>.
   CNT = CNT + 1.

  UPDATE Y001
    SET
      NAME1  = &lt;LT_Y001>-ZZCD
      NAME2  = SPACE
    WHERE
      ZZCD = &lt;LT_Y001>-ZZCD.

    IF SY-SUBRC &lt;> 0.
      FLG_ERR = 'X'.
      EXIT.
    ELSE.
* 1000件ずつコミット
      IF CNT = 1000.
        COMMIT WORK.
        CLEAR CNT.
      ENDIF.
   ENDIF.

 ENDLOOP.</pre>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-edit"><span class="label-box-label-text block-box-label-text box-label-text">LOOP命令を知りたい方はこちら</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>"LOOP命令" は内部テーブルのレコードを１行１行処理していく命令です。レコード数が100個あれば、100回。10000個あれば、10000回処理を繰り返します。</p>
</div></div>



<p>詳しく学習したい方は以下の記事をご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/loop/" title="【ABAP】LOOP～ENDLOOP命令を３分で解説" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/03/loop_endloop-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/03/loop_endloop-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/03/loop_endloop-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/03/loop_endloop-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】LOOP～ENDLOOP命令を３分で解説</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】ABAP初心者のためにLOOP命令の使い方をサンプルコード付きで分かりやすく解説しています。LOOP命令利用時の注意点や、押さえておきたいツボを３分で解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div></div>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-question-circle"><span class="label-box-label-text block-box-label-text box-label-text">フィールドシンボル</span></div><div class="label-box-content block-box-content box-content">
<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">LOOP AT LT_Y001 ASSIGNING &lt;LT_Y001>.</pre>



<p><strong>&lt;&gt;</strong>に囲まれた文字列はフィールドシンボルと呼ばれる特殊なオブジェクトです。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>本ページに記載したサンプルコードを完全に理解するためにはフィールドシンボルの知識も必要です。是非この機会に合わせて勉強しておきましょう！</p>



<p>詳しく学習したい方は以下の記事をご覧ください。</p>
</div></div>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/field-symbol/" title="【ABAP】FIELD-SYMBOLS命令―フィールドシンボルを３分で" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/01/FIELD-SYMBOLS-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/01/FIELD-SYMBOLS-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/01/FIELD-SYMBOLS-240x135.png 240w, https://it-biz.online/wp-content/uploads/2019/01/FIELD-SYMBOLS-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】FIELD-SYMBOLS命令―フィールドシンボルを３分で</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】フィールドシンボルの使い方（FIELD-SYMBOLS命令）を３分で解説します。フィールドシンボルの概念を理解できるように、サンプルコード付き・イメージ図付きで解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div></div>



<h3 class="wp-block-heading"><span id="toc4">UPDATE命令の注意点：WHERE句での条件漏れ</span></h3>



<p>SETオプションを利用する場合において気を付けなければならないのがWHERE句の条件漏れです。</p>



<p>例えば以下のようなテーブルが存在するとします。</p>



<figure class="wp-block-image aligncenter"><img loading="lazy" decoding="async" width="314" height="154" src="https://it-biz.online/wp-content/uploads/2019/03/13afe3c72a7597021fa08aec861c2cf2.png" alt="ABAP UPDATE" class="wp-image-1117" srcset="https://it-biz.online/wp-content/uploads/2019/03/13afe3c72a7597021fa08aec861c2cf2.png 314w, https://it-biz.online/wp-content/uploads/2019/03/13afe3c72a7597021fa08aec861c2cf2-300x147.png 300w, https://it-biz.online/wp-content/uploads/2019/03/13afe3c72a7597021fa08aec861c2cf2-304x149.png 304w" sizes="(max-width: 314px) 100vw, 314px" /></figure>



<p>ここで以下のような形でUPDATEをかけるとどうなるでしょうか。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">UPDATE Z_STUDENT_LIST     " 生徒名簿テーブル
  SET  
    Z_JUSHO  = '北海道'   " 住所を「北海道」に更新
  WHERE
    Z_FM     = '男'.      " 条件→「男」</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>答えは「<strong>条件に合致するすべてのレコードが更新されてしまう</strong>」です。つまり、以下の「性別」項目が「男」となっているレコードが一変に更新されます。</p>



<figure class="wp-block-image aligncenter"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2019/03/13afe3c72a7597021fa08aec861c2cf2.png" alt="ABAP UPDATE"/></figure>
</div></div>



<p>例えば、WHERE条件にすべてのレコードが合致してしまうような条件を記載していると、<strong><span class="marker-under">そのデータベーステーブル内のすべてのレコードが更新されてしまう！</span></strong>ことも起きえますのでUPDATE命令を利用する際には細心の注意が必要です。</p>



<h2 class="wp-block-heading"><span id="toc5">UPDATE命令：FROMオプション</span></h2>



<p>続いて構造や内部テーブルの値をもとにレコード更新を行うコーディング方法の解説です。</p>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box"><div class="tab-caption-box-label block-box-label box-label fab-lightbulb"><span class="tab-caption-box-label-text block-box-label-text box-label-text">UPDATE命令：パターン②</span></div><div class="tab-caption-box-content block-box-content box-content">
<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">******単一レコードを更新する場合******
UPDATE (DBテーブル) FROM (構造).

******複数レコードを更新する場合******
UPDATE (DBテーブル) FROM TABLE (内部テーブル).</pre>



<p><strong><span class="marker-under">指定した構造/内部テーブルのキー項目と一致するレコードが更新対象</span></strong>となります。</p>
</div></div>



<p>分かりやすいように説明すると、例えば生徒名簿テーブルで出席番号がキー項目となっているとします。構造に格納されている出席番号が「２」の場合、テーブルのレコード更新されるのは、出席番号が「２」のレコードとなるということです。</p>



<figure class="wp-block-image aligncenter"><img loading="lazy" decoding="async" width="521" height="177" src="https://it-biz.online/wp-content/uploads/2019/02/79282d707bfa3e63351ca6ddbe1753a5.png" alt="" class="wp-image-590" srcset="https://it-biz.online/wp-content/uploads/2019/02/79282d707bfa3e63351ca6ddbe1753a5.png 521w, https://it-biz.online/wp-content/uploads/2019/02/79282d707bfa3e63351ca6ddbe1753a5-300x102.png 300w, https://it-biz.online/wp-content/uploads/2019/02/79282d707bfa3e63351ca6ddbe1753a5-500x170.png 500w, https://it-biz.online/wp-content/uploads/2019/02/79282d707bfa3e63351ca6ddbe1753a5-304x103.png 304w" sizes="(max-width: 521px) 100vw, 521px" /></figure>



<p>ただし、ご覧のようにこの記述方法だと、<strong>更新する内容や更新条件がわかりづらくなってしまう</strong>というのがデメリットです。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">UPDATE Y001 FROM LS_Y001.</pre>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box"><div class="tab-caption-box-label block-box-label box-label fab-question-circle"><span class="tab-caption-box-label-text block-box-label-text box-label-text">変数/構造/内部テーブルの違いがよくわからない方は・・・</span></div><div class="tab-caption-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>この章では「構造」「内部テーブル」といったABAP用語を用いました。</p>
</div></div>



<p>以下のページでは初心者向けにわかりやすくABAPの基本知識である<strong>構造と内部テーブルの違い</strong>を解説しています。合わせてご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/internaltable-structure/" title="【SAP/ABAP】変数/構造と内部テーブルの違いを３分でわかりやすく解説" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/01/data-object-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/01/data-object-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/01/data-object-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/01/data-object-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【SAP/ABAP】変数/構造と内部テーブルの違いを３分でわかりやすく解説</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】ABAPの基本―。変数・構造・内部テーブルとは何か？３つのデータオブジェクトの違いを初めてABAPを勉強する方向けに図解します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.28</div></div></div></div></a>
</div></figure>
</div></div>



<h2 class="wp-block-heading"><span id="toc6">UPDATE命令：リターンコード（システム項目）</span></h2>



<p>UPDATE命令の結果はシステム項目 "SY-SUBRC" に格納されます。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-lightbulb"><span class="label-box-label-text block-box-label-text box-label-text">UPDATE命令の結果</span></div><div class="label-box-content block-box-content box-content">
<figure class="wp-block-table aligncenter"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>条件</th><th>SY-SUBRCの値</th></tr></thead><tbody><tr><td><strong>レコードが（少なくとも1行以上）更新された場合</strong></td><td><strong>0</strong></td></tr><tr><td><strong>何らかの理由で1行も更新されなかった場合</strong></td><td>4</td></tr></tbody></table></div></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/themes/cocoon-master/images/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>SY-SUBRC（システム項目）の意味が不明な方はこちらの記事をご覧ください。</p>
</div></div>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/sy-xxx/" title="【ABAP】SY-SUBRCとは？１分で学ぶシステム項目(変数)の役割と使い方" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/02/SY-SUBRC-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/02/SY-SUBRC-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/02/SY-SUBRC-240x135.png 240w, https://it-biz.online/wp-content/uploads/2019/02/SY-SUBRC-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】SY-SUBRCとは？１分で学ぶシステム項目(変数)の役割と使い方</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】SY-SUBRC/SY-TABIX/SY-DATUMなどのSY始まりの変数（システム項目）の意味とプログラミングの仕方を解説しています。ABAP初心者でも理解しやすいようサンプルコード付きでわかりやすくご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div></div>



<p>またUPDATE命令によって更新されたレコード数は<a href="https://it-biz.online/sap/insert/">INSERT命令</a>同様「<strong>SY-DBCNT</strong>」に格納されます。UPDATE命令の結果をいくつかのレコードずつに分けて<strong><a href="https://it-biz.online/sap/sap-luw/">コミット</a></strong>したい場合などに使う場合もありますので合わせて覚えておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc7">ビューに対する更新も可能</span></h2>



<p>ビューに対する行更新も可能です。が、INSERT文と同様、対象のビューが<strong><u>①単一のテーブルから構成されていること</u></strong>と、<u><strong>②ビューの設定として「変更可能」になっていること</strong></u>が条件となります。</p>



<p>※ビューについて詳しく知りたい方は以下の記事をご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/view/" title="【SAP】ビュー（view）を３分でざっくり説明する：SM30" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/02/View_SM30-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/02/View_SM30-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/02/View_SM30-240x135.png 240w, https://it-biz.online/wp-content/uploads/2019/02/View_SM30-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【SAP】ビュー（view）を３分でざっくり説明する：SM30</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】SAPで作成できる４つのビューを画像付きで解説します。データベースビュー/更新ビュー/射影ビュー/ヘルプビューの意味とシステム的な役割、ビューを作成することのメリットなど１から網羅的に解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>



<h2 class="wp-block-heading"><span id="toc8">SAP / ABAPを１から学習したい方は</span></h2>



<p><!-- wp:cocoon-blocks/balloon-ex-box-1 {"id":"1","icon":"https://it-biz.online/wp-content/uploads/2023/06/man.png"} --></p>
<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box">
<div class="speech-person">
<figure class="speech-icon"><img decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" /></figure>
<div class="speech-name"></div>
</div>
<div class="speech-balloon">
<p><!-- wp:paragraph --></p>
<p>初めてABAPを勉強するのは結構難しいですよね。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>でもその悩みを抱えているのは一人じゃありません。全てのABAP使いが同じ道を進んできました。</p>
<p><!-- /wp:paragraph --></p>
</div>
</div>
<p><!-- /wp:cocoon-blocks/balloon-ex-box-1 --></p>
<p><!-- wp:paragraph --></p>
<p>ABAPをはじめとするプログラミングスキルを武器に、<strong><span class="marker-under">時間と場所に捉われない自由な生き方</span></strong>を目指してみませんか？</p>
<div class="good-box common-icon-box">
<div class="speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf">
<div class="speech-person">
<figure class="speech-icon"><img loading="lazy" decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" width="385" height="424" /></figure>
</div>
<div class="speech-balloon">
<p><strong>あなたの技術、もっと価値ある場所で活かしませんか？<br />
<span style="font-size: 20px;"><span style="color: #ff6600;">SAPエンジニア</span>のキャリア支援はこちらから↓</span></strong></p>
</div>
</div>
<p><strong><span class="badge">No.1　&gt;</span>　<span style="font-size: 18px;"><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341">外資系・IT業界などハイクラスの転職なら【アクシスコンサルティング】</a></span></strong><span class="marker-under"><strong><span style="font-size: 18px;"><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341" width="1" height="1" /></span><br />
</strong></span>4人に1人のコンサルタントが選ぶパートナー！<br />
ビッグ4やアクセンチュアへの転職を実現し<span class="marker-under"><strong>年収1000万</strong></span>へ。</p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.2　&gt;</span>　<a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">IT・Web転職特化エージェント【レバテックキャリア</a><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">】</a></strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">サービス利用者数<strong>20万人</strong>突破。</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
平均<strong>年収アップ率77%</strong>であなたの転職成功を保証します。</span></span></p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.3　&gt;</span>　</strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=3134203&amp;p_id=3802&amp;pc_id=9376&amp;pl_id=52943">リクルートエージェント</a><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">＼転職支援実績NO.1／</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
応募が殺到しすぎるが故に・・・非公開にせざるを得ない魅力的な求人が多数！<br />
</span></span></p>
</div>

<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph {"align":"center"} --></p>
<p class="has-text-align-center" style="text-align: center;"><span class="badge-green">読者料典</span>　<a href="https://it-biz.online/sap/abap-abc/">【完全無料】ABAP：学習カリキュラム</a>　←こちらから！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>

]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【ABAP】内部結合（SELECT ~ INNER JOIN）を３分で解説</title>
		<link>https://it-biz.online/sap/internal-bond/</link>
					<comments>https://it-biz.online/sap/internal-bond/#comments</comments>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Wed, 31 Mar 2021 01:00:00 +0000</pubDate>
				<category><![CDATA[ABAP]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[オープンSQL]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=828</guid>

					<description><![CDATA[ABAPのオープンSQL―SELECT文の内部結合を行うテクニックについて解説します。 ABAPerを目指す方であれば知らないと恥ずかしい基本知識の１つです。是非最後までご覧ください。 目次 前提：テーブル結合とは？内部 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>ABAPのオープンSQL―<strong>SELECT文の内部結合を行うテクニックについて解説します</strong>。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>そもそも、内部結合って何？という方でも理解できるよう分かりやすく解説します。</p>
</div></div>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-check"><span class="label-box-label-text block-box-label-text box-label-text">このページで学べる内容</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>【前提】テーブル結合とは？</li>



<li>内部結合（INNER JOIN）とは？
<ul class="wp-block-list">
<li>外部結合（OUTER JOIN）との違い</li>
</ul>
</li>



<li>INNER JOIN－構文ルール</li>



<li>INNER JOIN－使用時の注意点・考慮すべき点</li>
</ul>
</div>
</div></div>



<p>ABAPerを目指す方であれば<strong><span class="marker-under">知らないと恥ずかしい基本知識の１つ</span></strong>です。是非最後までご覧ください。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p>本ページはABAPにおけるSELECT文の知識がある方向けの解説ページです。</p>



<p>SELECT文の意味やコーディング方法がイマイチ分かっていない・・・という方は初めに以下のページをご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/select-abc/" title="【ABAP】３分で理解できる！SELECT命令" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】３分で理解できる！SELECT命令</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】ABAPを学習中の方のためSELECT命令（オープンSQL）の使い方・構文ルールを分かりやすく解説します。サンプルコード付きでご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.26</div></div></div></div></a>
</div></figure>
</div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">前提：テーブル結合とは？</a></li><li><a href="#toc2" tabindex="0">内部結合（INNER JOIN）とは？</a><ol><li><a href="#toc3" tabindex="0">内部結合：結合条件</a></li><li><a href="#toc4" tabindex="0">内部結合の注意点</a></li></ol></li><li><a href="#toc5" tabindex="0">内部結合（SELECT ~ INNER JOIN）</a></li><li><a href="#toc6" tabindex="0">ABAPにおける内部結合（INNER JOIN）の留意点</a><ol><li><a href="#toc7" tabindex="0">大量にテーブル結合するとショートダンプが起きやすい</a></li><li><a href="#toc8" tabindex="0">結合条件に一致する項目が複数あるとレコード重複につながる</a></li></ol></li><li><a href="#toc9" tabindex="0">SAP / ABAPを１から学習したい方は</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">前提：テーブル結合とは？</span></h2>



<p>テーブル結合とは、その名の通り<strong><span class="marker-under">テーブルとテーブルを合体させること</span></strong>を言います。</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="356" src="https://it-biz.online/wp-content/uploads/2021/05/image-1-1024x356.png" alt="" class="wp-image-5149" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-1-1024x356.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-1-300x104.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-1-500x174.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-1-768x267.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-1-800x278.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-1.png 1351w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">テーブル結合のイメージ</figcaption></figure>



<p>１つのテーブルだけでは情報が足りないような場合に、別のテーブルから情報を引っ張ってきて別のテーブルを作ってあげるようなイメージです。</p>



<p>テーブル結合には、内部結合と外部結合。２種類の結合パターンが存在しますが、<strong>本ページでは内部結合（INNER JOIN）について解説</strong>しています。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-lightbulb"><span class="label-box-label-text block-box-label-text box-label-text">内部結合/外部結合</span></div><div class="label-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-chevron-circle-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>内部結合：両方のテーブルに存在するデータ同士をくっつける</li>



<li>外部結合：１つのテーブルを基準としてデータをくっつける</li>
</ul>
</div>
</div></div>



<div class="wp-block-cocoon-blocks-info-box block-box primary-box">
<p>外部結合について学びたい方は以下のページをご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/outer-join/" title="【ABAP】外部結合（SELECT ~ OUTER JOIN）を３分で解説" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/03/OUTER-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/03/OUTER-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/03/OUTER-240x135.png 240w, https://it-biz.online/wp-content/uploads/2019/03/OUTER-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】外部結合（SELECT ~ OUTER JOIN）を３分で解説</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】OpenSQLのテクニックの１つー。外部結合（OUTER JOIN）について初心者向けに解説します。サンプルコードとイメージ図付きで初めて外部結合を学ぶ方でも理解できるよう分かりやすくご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div>



<h2 class="wp-block-heading"><span id="toc2">内部結合（INNER JOIN）とは？</span></h2>



<p>内部結合（INNER JOIN）とは、<strong><span class="marker-under">結合条件が両方のテーブルに存在するデータ同士を結合させること</span></strong>を指し示します。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>テーブルAとテーブルBを例に解説していきます。</p>
</div></div>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="872" height="215" src="https://it-biz.online/wp-content/uploads/2021/05/image-2.png" alt="" class="wp-image-5150" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-2.png 872w, https://it-biz.online/wp-content/uploads/2021/05/image-2-300x74.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-2-500x123.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-2-768x189.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-2-800x197.png 800w" sizes="(max-width: 872px) 100vw, 872px" /></figure>



<h3 class="wp-block-heading"><span id="toc3">内部結合：結合条件</span></h3>



<p><strong>結合条件</strong>とは、テーブルAとテーブルBを結合させる条件のこと（<strong><span class="marker-under">何を基準にして２つのテーブルを合体させるか？</span></strong>）です。</p>



<p>例えば、テーブルAとテーブルB両方に存在する「<strong>役職ID</strong>」を結合条件として２つのテーブルをくっつけてみると、同じ「<strong>役職ID</strong>」をもつレコード同士が１つのレコードとして合体します。</p>



<div class="wp-block-cocoon-blocks-sticky-box blank-box block-box sticky">
<p class="has-text-align-center">テーブルA―役職ID　＝　テーブルB―役職ID</p>
</div>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="424" src="https://it-biz.online/wp-content/uploads/2021/05/image-3-1024x424.png" alt="" class="wp-image-5151" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-3-1024x424.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-3-300x124.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-3-500x207.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-3-768x318.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-3-800x332.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-3.png 1192w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">例）内部結合</figcaption></figure>



<p>これが内部結合です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>Excel関数に詳しい方であれば、VLOOKUP関数のイメージに近いものが思い浮かんで入れば理解はOKです。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc4">内部結合の注意点</span></h3>



<p>内部結合は冒頭でも解説した通り、<strong>両方のテーブルにレコードが存在する場合にのみ結合される結合方法</strong>です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>したがって、もし片方のテーブルにしかないレコードが存在すると、以下のようにレコードが欠けた状態で結合されます。</p>
</div></div>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="380" src="https://it-biz.online/wp-content/uploads/2021/05/image-4-1024x380.png" alt="" class="wp-image-5154" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-4-1024x380.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-4-300x111.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-4-500x186.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-4-768x285.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-4-800x297.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-4.png 1257w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">役職ID「E」が存在しないのでレコードが結合されない</figcaption></figure>



<p>対して、外部結合の場合はレコードが欠けた状態でも無理やり結合が行れるため以下のような形になります。</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="433" src="https://it-biz.online/wp-content/uploads/2021/05/image-5-1024x433.png" alt="" class="wp-image-5155" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-5-1024x433.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-5-300x127.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-5-500x212.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-5-768x325.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-5-800x339.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-5.png 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>ここまでの解説を踏まえ、ABAPで内部結合（INNER JOIN）させる方法の解説に移ります。</p>



<h2 class="wp-block-heading"><span id="toc5">内部結合（SELECT ~ INNER JOIN）</span></h2>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="6-7" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT
（取得したい項目名）
（取得したい項目名）
  ・・・・・
FROM       (テーブル)
INNER JOIN (テーブル)
      ON   (テーブル)~(項目) = (テーブル)~(項目)
INTO TABLE (内部テーブル).</pre>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-lightbulb"><span class="label-box-label-text block-box-label-text box-label-text">SELECT文の基本</span></div><div class="label-box-content block-box-content box-content">
<p>SELECT文の基本が曖昧な方はまずはこちらのサンプルコードを眺めてみてください。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT（取得したい項目名）
  FROM（テーブル名）
  INTO（構造）/ INTO TABLE (内部テーブル)</pre>



<p>SELECT文の基本解説編はこちら。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/select-abc/" title="【ABAP】３分で理解できる！SELECT命令" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/01/SELECT_ENDSELECT-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【ABAP】３分で理解できる！SELECT命令</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】ABAPを学習中の方のためSELECT命令（オープンSQL）の使い方・構文ルールを分かりやすく解説します。サンプルコード付きでご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.26</div></div></div></div></a>
</div></figure>
</div></div>



<p>内部結合を行う場合は、INNER JOINオプションを利用し<strong><span class="marker-under">内部結合するテーブルを指定</span></strong>、ONオプションの後に、<strong><span class="marker-under">結合条件を指定</span></strong>します。</p>



<p>以下にサンプルコードを載せておきます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT 
  BKPF~BELNR,                   "取得項目：会計伝票番号
  BKPF~GJAHR,                   "取得項目：会計年度
  BKPF~BLART,                   "取得項目：伝票タイプ
  BSEG~SAKNR                    "取得項目：G/L 勘定コード
FROM
  BKPF                          "取得元テーブル：会計伝票ヘッダ
INNER JOIN BSEG                 "取得元テーブル：会計伝票明細
  ON  BKPF~BUKRS = BSEG~BUKRS   "結合条件：会社コード
  AND BKPF~BELNR = BSEG~BELNR   "結合条件：会計伝票番号
  AND BKPF~GJAHR = BSEG~GJAHR   "結合条件：会計年度
INTO TABLE LT_BSEG_BKPF.        "取得項目を格納する内部テーブル</pre>



<p>結合条件を「会社コード」「会計伝票番号」「会計年度」として、BSEG（会計伝票明細）テーブルとBKPF（会計伝票ヘッダ）テーブルを内部結合するサンプルコードです。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>分かりやすく言えば、BSEGとBKPFに存在するレコードを、「会社コード」「会計伝票番号」「会計年度」をキーにくっつけているだけです。</p>
</div></div>



<p>尚、内部結合（INNER JOIN）は２つのテーブルだけでなく、３つ４つなど複数のテーブルを一気に結合することも可能です。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="abap" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT
  KNA1~KUNNR                             "得意先コード
  KNA1~NAME1                             "名称1
FROM
  KNA1
INNER JOIN KNB1
  ON KNA1~KUNNR = KNB1~KUNNR
INNER JOIN ADRC AS C
  ON KNA1~ADRNR = KDRC~ADDRNUMBER
INTO TABLE LT_KNA
WHERE
      KNA1~BUKRS = '1000'                 "会社コード
  AND KNA1~LOEVM = SPACE                  "マスタレコード削除フラグ(共通)
  AND ADRC~DATE_FROM = '2020/12/31'.      "有効開始日付</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>INNER JOINをあまり使いすぎると、端的に言って読みにくいコードになってしまうのでむやみに使いすぎるのは避けたほうが良いでしょう。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc6">ABAPにおける内部結合（INNER JOIN）の留意点</span></h2>



<p>最後にINNER JOINを使う際のより具体的な注意点を２点解説します。</p>



<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title">INNER JOIN利用時に留意しておきたいポイント</div>
<ul class="wp-block-list">
<li>大量にテーブル結合するとショートダンプが起きやすい</li>



<li>結合条件に一致する項目が複数あるとレコード重複につながる</li>
</ul>
</div>



<h3 class="wp-block-heading"><span id="toc7">大量にテーブル結合するとショートダンプが起きやすい</span></h3>



<p>大量なテーブルを一気に結合しようとするとメモリ不足によりショートダンプが発生する場合があります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>だいたい10個以上結合すると危険水域に達してくるので、その場合は事前にビューを作成しておくなど別の方法を検討しましょう。</p>
</div></div>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label fab-lightbulb"><span class="label-box-label-text block-box-label-text box-label-text">ビューとは？</span></div><div class="label-box-content block-box-content box-content">
<p><strong>ビュー（View）とは1つ以上のデータベースから任意のデータを選択して、 見たいデータだけ、欲しいデータだけを表示する仕組み</strong>です。</p>



<p>詳しくは以下のページで解説しておりますので合わせてご覧ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン wp-block-embed-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/sap/view/" title="【SAP】ビュー（view）を３分でざっくり説明する：SM30" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/02/View_SM30-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/02/View_SM30-320x180.png 320w, https://it-biz.online/wp-content/uploads/2019/02/View_SM30-240x135.png 240w, https://it-biz.online/wp-content/uploads/2019/02/View_SM30-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【SAP】ビュー（view）を３分でざっくり説明する：SM30</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】SAPで作成できる４つのビューを画像付きで解説します。データベースビュー/更新ビュー/射影ビュー/ヘルプビューの意味とシステム的な役割、ビューを作成することのメリットなど１から網羅的に解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.06</div></div></div></div></a>
</div></figure>
</div></div>



<h3 class="wp-block-heading"><span id="toc8">結合条件に一致する項目が複数あるとレコード重複につながる</span></h3>



<p>結合条件はMECEに指定する必要があります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>もしテーブルBの役職IDがキー項目でないような場合を例にすると、結果は以下のような形になってしまいます。</p>
</div></div>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="452" src="https://it-biz.online/wp-content/uploads/2021/05/image-6-1024x452.png" alt="" class="wp-image-5158" srcset="https://it-biz.online/wp-content/uploads/2021/05/image-6-1024x452.png 1024w, https://it-biz.online/wp-content/uploads/2021/05/image-6-300x132.png 300w, https://it-biz.online/wp-content/uploads/2021/05/image-6-500x221.png 500w, https://it-biz.online/wp-content/uploads/2021/05/image-6-768x339.png 768w, https://it-biz.online/wp-content/uploads/2021/05/image-6-800x353.png 800w, https://it-biz.online/wp-content/uploads/2021/05/image-6.png 1129w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>内部結合は、結合条件にヒットした分だけレコードを格納していく仕組みであるという点を頭に入れておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc9">SAP / ABAPを１から学習したい方は</span></h2>



<p><!-- wp:cocoon-blocks/balloon-ex-box-1 {"id":"1","icon":"https://it-biz.online/wp-content/uploads/2023/06/man.png"} --></p>
<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box">
<div class="speech-person">
<figure class="speech-icon"><img decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" /></figure>
<div class="speech-name"></div>
</div>
<div class="speech-balloon">
<p><!-- wp:paragraph --></p>
<p>初めてABAPを勉強するのは結構難しいですよね。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>でもその悩みを抱えているのは一人じゃありません。全てのABAP使いが同じ道を進んできました。</p>
<p><!-- /wp:paragraph --></p>
</div>
</div>
<p><!-- /wp:cocoon-blocks/balloon-ex-box-1 --></p>
<p><!-- wp:paragraph --></p>
<p>ABAPをはじめとするプログラミングスキルを武器に、<strong><span class="marker-under">時間と場所に捉われない自由な生き方</span></strong>を目指してみませんか？</p>
<div class="good-box common-icon-box">
<div class="speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf">
<div class="speech-person">
<figure class="speech-icon"><img loading="lazy" decoding="async" class="speech-icon-image" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" width="385" height="424" /></figure>
</div>
<div class="speech-balloon">
<p><strong>あなたの技術、もっと価値ある場所で活かしませんか？<br />
<span style="font-size: 20px;"><span style="color: #ff6600;">SAPエンジニア</span>のキャリア支援はこちらから↓</span></strong></p>
</div>
</div>
<p><strong><span class="badge">No.1　&gt;</span>　<span style="font-size: 18px;"><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341">外資系・IT業界などハイクラスの転職なら【アクシスコンサルティング】</a></span></strong><span class="marker-under"><strong><span style="font-size: 18px;"><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=2296865&amp;p_id=2502&amp;pc_id=5511&amp;pl_id=32341" width="1" height="1" /></span><br />
</strong></span>4人に1人のコンサルタントが選ぶパートナー！<br />
ビッグ4やアクセンチュアへの転職を実現し<span class="marker-under"><strong>年収1000万</strong></span>へ。</p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.2　&gt;</span>　<a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">IT・Web転職特化エージェント【レバテックキャリア</a><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840">】</a></strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">サービス利用者数<strong>20万人</strong>突破。</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
平均<strong>年収アップ率77%</strong>であなたの転職成功を保証します。</span></span></p>
<p><span style="font-size: 18px;"><strong><span class="badge">No.3　&gt;</span>　</strong></span><span style="font-size: 18px;"><strong><img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=1995891&amp;p_id=969&amp;pc_id=1263&amp;pl_id=13840" width="1" height="1" /><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=3134203&amp;p_id=3802&amp;pc_id=9376&amp;pl_id=52943">リクルートエージェント</a><br />
<img loading="lazy" decoding="async" style="border: none;" src="//i.moshimo.com/af/i/impression?a_id=3134186&amp;p_id=3878&amp;pc_id=9624&amp;pl_id=53722" width="1" height="1" /></strong><span style="font-size: 16px;">＼転職支援実績NO.1／</span></span><span style="font-size: 18px;"><span style="font-size: 16px;"><br />
応募が殺到しすぎるが故に・・・非公開にせざるを得ない魅力的な求人が多数！<br />
</span></span></p>
</div>

<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph {"align":"center"} --></p>
<p class="has-text-align-center" style="text-align: center;"><span class="badge-green">読者料典</span>　<a href="https://it-biz.online/sap/abap-abc/">【完全無料】ABAP：学習カリキュラム</a>　←こちらから！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>

]]></content:encoded>
					
					<wfw:commentRss>https://it-biz.online/sap/internal-bond/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
