0
1

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 1 year has passed since last update.

【SQL Server入門】SQL Serverの基礎まとめ

Last updated at Posted at 2022-05-22

はじめに

SQL Serverを勉強したのでまとめてみました。

SELECT, FROM

SELECTは列(カラム)を選択します。
FROMは表(テーブル)を選択します。

SELECT *
FROM consumer

SELECT文の * は、全カラムを取得するという意味。

また、次の例のように * を使わなくても良い。

SELECT name, age
FROM consumer

FROM文でも複数テーブルを指定できるがおすすめしない。
なぜなら、1つ目のテーブルにくっついて2つ目のテーブルが表示されてしまうから。

WHERE

WHERE文では、SELECTするカラムに条件を付け加えることができる。

SELECT *
FROM consumer
WHERE age >= 20

20歳以上のお客さんの情報を全て表示する。

論理演算子
a = b a と b は等しい
a < b a は b より小さい
a > b a は b より大きい
a <= b a は b 以下
a >= b a は b 以上
a <> b a と b は等しくない

ANDやORなどを組み合わせて条件指定もできる。

SELECT *
FROM consumer
WHERE age >= 20 AND name = '山田太郎'

memberテーブルから、20歳以上の”山田太郎”さんの情報だけを全て表示する。

ORDER BY

デフォルトでは昇順で並べられる。
ASC:昇順
DESC:降順

SELECT age, name
FROM consumer
ORDER BY age DESC

この例では、降順の年齢順に名前を表示していく。

JOIN ON

複数テーブルの共通部分を連結させることができる。
よくあるのがIDで連結させる。

SELECT consumer.age, consumer.name
FROM consumer
JOIN goods
  ON consumer.id = goods.consumerID

JOINに連結させたいテーブル名、ONに条件を書く。
”テーブル名.カラム名”と表記して、どのテーブルのどのカラムかを区別する。

この文では、consumerテーブルのidカラムとgoodsテーブルのconsumerIDカラムが同じであれば連結させて表記する。

AS

別名をつけることができる。

SELECT name AS '名前', age AS '年齢'
FROM consumer

このように書くとカラム名がそれぞれ「名前」、「年齢」として表示される。

次のようにJOIN ONと一緒に使うことも多い。

SELECT c.age, c.name
FROM consumer AS c
JOIN goods AS g
  ON c.id = g.consumerID

終わりに

以前MySQLを少しの間勉強したことがあったのですが、実際の膨大なデータを扱うのは今回が初めてでした。
ですが、めちゃめちゃおもしろい、、、!!
業務でも使っていくので極めたいと思います!

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?