0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【SQL】サブクエリ, AS

Posted at

はじめに

今回はサブクエリとASを紹介したいと思います。

サブクエリとは

サブクエリとは、SQLではクエリの中に他のクエリを書くことができ、この他のクエリのことを元のクエリに対してサブクエリと言います。
例えば、ある人の今月に使った支出の合計を基準にその人よりも支出の多い人を同じテーブルから見つけたいと言うときに、サブクエリを使わないとまずは基準になる人の支出合計を求めるクエリを書き、その結果をもとにテーブルからその支出金額より多い人を見つけるクエリを書く必要があるので、クエリを別々に二つ書かないといけません。しかし、サブクエリを使うと一つのクエリでこれらを求めることができます。

サブクエリを使ってみる

以下のsampleテーブルからpriceの合計を求め、その合計よりもpriceが多い人のnameを一覧表示するクエリを考えてみます。

ScreenShot 2021-11-15 12.36.52.png

とりあえず、サブクエリを用いないバージョンで書いてみましょう。

<平均priceを求めるクエリ>
SELECT AVG(price)
FROM sample;
-----------------
SELECT name
FROM sample
WHERE price > 上のクエリで求めた平均price;

このように、クエリを二つに分けて書く必要がありますよね。
しかし、以下のようにサブクエリを使うと一つのクエリにまとめることができます。

SELECT name
FROM sample
WHERE price > (
  SELECT AVG(price)
  FROM sample
);

()で囲まれたクエリをサブクエリと言います。ちなみに、サブクエリの中に;は必要ありません。

AS

ASを使うことで、カラムの名前を好きな文字列に変更できます。

SELECT SUM(price) AS "金額の合計"
FROM sample;

ScreenShot 2021-11-15 12.54.05.png

おわりに

今回はサブクエリを使って二つのクエリをまとめる方法と、ASを使ってカラム名を任意のものに変更する方法法を紹介しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?