📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
ページの作成:「== 概要 == <code>WITH</code>句があるSQL文は、その後に記述されている<code>SELECT</code>文よりも先に実行される。<br> <code>WITH</code>句は…」 |
|||
| (同じ利用者による、間の2版が非表示) | |||
| 9行目: | 9行目: | ||
<br> | <br> | ||
以下の例は、<code>WITH</code>句を使用している。<br> | 以下の例は、<code>WITH</code>句を使用している。<br> | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="tsql"> | ||
WITH <変数1> as | WITH <変数1> as | ||
( | ( | ||
SELECT <カラム名> FROM <テーブル名> | SELECT <カラム名> FROM <テーブル名> | ||
WHERE <条件> | WHERE <条件> | ||
) | ) | ||
SELECT <カラム名> | SELECT <カラム名> | ||
| 29行目: | 29行目: | ||
<br><br> | <br><br> | ||
== | == WITH句を使用する場合 == | ||
下表に示すテーブルがある。<br> | 下表に示すテーブルがある。<br> | ||
<center> | <center> | ||
| 64行目: | 64行目: | ||
Name Date Sales | Name Date Sales | ||
A 20210101 200 | A 20210101 200 | ||
<br> | <br><br> | ||
== WITH句の値が複数の場合 == | |||
<code>WITH</code>句の値が複数でも指定できる。<br> | <code>WITH</code>句の値が複数でも指定できる。<br> | ||
以下の例では、<code>WITH</code>句で複数の値を取得した後、8行目の<code>IN</code>句の条件にしている。<br> | 以下の例では、<code>WITH</code>句で複数の値を取得した後、8行目の<code>IN</code>句の条件にしている。<br> | ||
| 83行目: | 85行目: | ||
B 20210102 150 | B 20210102 150 | ||
<br><br> | <br><br> | ||
== WITH句を使用しない場合 == | |||
下表に示すテーブルがある。<br> | |||
<center> | |||
{| class="wikitable" style="background-color:#fefefe;" | |||
|+ T_Sampleテーブル | |||
|- | |||
| style="background-color:#66CCFF;" | Name | |||
| style="background-color:#66CCFF;" | Date | |||
| style="background-color:#66CCFF;" | Sales | |||
|- | |||
| A || 20210101 || 200 | |||
|- | |||
| B || 20210102 || 150 | |||
|- | |||
| C || 20210103 || 100 | |||
|} | |||
</center> | |||
<br> | |||
<code>FROM</code>句の箇所にある副問い合わせを使用して、レコードを抽出する。<br> | |||
<syntaxhighlight lang="sql"> | |||
SELECT b.Name, b.Date, b.Sales | |||
FROM | |||
( | |||
SELECT AVG(Sales) AS SalesAverage FROM T_Sample | |||
) a, T_Sample b | |||
WHERE a.SalesAverage < b.Sales; | |||
</syntaxhighlight> | |||
<br> | |||
4行目は、Salesカラムの平均を求める副問い合せであり、副問い合わせの結果をテーブル(ビュー)のように使用している。<br> | |||
1つ目の<code>FROM</code>句の中に、SQL文が記述されているため、<code>WITH</code>句より可読性が落ちている。<br> | |||
<br> | |||
結果は、以下の通りである。<br> | |||
Name Date Sales | |||
A 20210101 200 | |||
<br><br> | |||
{{#seo: | |||
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki | |||
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 | |||
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux | |||
|image=/resources/assets/MochiuLogo_Single_Blue.png | |||
}} | |||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:SQL_Server]] | [[カテゴリ:SQL_Server]] | ||