SQLの基本構文その1
個人的にSQLの操作にもなれたいと思い、まずはSQLの基本的な操作についてまとめた。
テーブル名はjojoとする。
全テーブルを取得する
SELECT (カラム名) FROM (テーブル名);
例
nameカラムを取り出したいときは、
SELECT name FROM jojo;
nameカラムとpartカラムを取り出したいときは、
SELECT name, part FROM jojo;
全カラムを取り出したいときは、
SELECT * FROM jojo;
テーブルから特定のデータを取り出したいとき
SELECT (カラム名) FROM (テーブル名) WHERE (条件);
例
partが3のものだけ取り出したいとき
SELECT * FROM jojo WHERE part = 1;
(注意)jsなどの比較演算子のように「===」とは書かない。
part_nameがファントム・ブラッドのものだけ取り出したいとき
SELECT * FROM jojo WHERE part_name = 'ファントム・ブラッド';
ワイルドカード
テキストデータの特定のカラムを取得したい場合に、文言中に特定の文言があったときとかに
'%(指定したい文字)%'
のように%で指定したい文字をを挟む。
この%は前後どちらかに着けることも可能。
'アイス%'→「アイス」で始まる文言のカラムデータ
'%アイス'→「アイス」で終わる文言のカラムデータ
例
ageが20未満で、nameに「空条」とつくものだけ取り出したいとき
SELECT * FROM jojo WHERE age < 20 LIKE '%空条%';
ageが20未満で、nameが「空条」から始まるものだけ取り出したいとき
SELECT * FROM jojo WHERE age < 20 LIKE '空条%';
partが7以下で、nameが「ジョースター」で終わるものだけ取り出したいとき
SELECT * FROM jojo WHERE part <= 7 LIKE '%ジョースター';
条件を複数つけたいとき
・nameが「ジョースター」で終わる
・ageが20未満
これら2つの条件を満たすカラムを取り出したいとき
SELECT * FROM jojo WHERE LIKE '%ジョースター' AND age < 20;
どちらかでいい場合は、
SELECT * FROM jojo WHERE LIKE '%ジョースター' OR age < 20;
何も入っていない値を取得したいとき
今回はageに何も入っていないカラムがあるので、これを取得したいとき、
SELECT * FROM jojo WHERE age IS NULL;
逆に、ageがNULLじゃないカラムを取り出したいとき、
SELECT * FROM jojo WHERE age IS NOT NULL;
取り出したデータを並べ替えたい場合
例
ageが大きい順に並べたいとき、
SELECT * FROM jojo ORDER BY age ASC;
ageが小さい順に並べたいとき、
SELECT * FROM jojo ORDER BY age DESC;
ちなみに
ASC→ASCEND(上昇する、昇る)
DESC→DESCEND(加工する、下る)
という英単語の頭文字。
取得するデータの上限を設けたいとき
例
ageが20未満で、5こだけデータを取り出したいとき、
SELECT * FROM jojo WHERE age < 20 LIMIT 5;
Author And Source
この問題について(SQLの基本構文その1), 我々は、より多くの情報をここで見つけました https://qiita.com/RikiLog/items/836bb5e1832acfeab414著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .