SQL基本言語について
SQLとは▼
SQL(Structured Query Language)は、リレーショナルデーターベース(RDB)の操作を扱う為の言語。
リレーショナルデータベースとは、データをテーブルという表形式の構造で管理するデータベースのことで、Webアプリケーションを作成する際は一般的にリレーショナルデータベースが使用されます。
SQLはデータベースやテーブルに対して様々な命令を行いますが、
その命令は大きく2つ、データを定義するDDL(Data Definition Language)と、データを操作するDML(Data Manipulation Language)に分類されます。
DDLとは▼
データを定義するときに使用します。
DDLのできること ▼
命令 | 機能 |
---|---|
CREATE | データベースやテーブルの作成 |
ALTER | データベースやテーブルの更新 |
DROP | データベースやテーブルの削除 |
DMLとは▼
データを操作するときに使用します。
DMLのできること ▼
命令 | 機能 |
---|---|
INSERT | データの作成 |
UPDATE | データの更新 |
SELECT | データの検索 |
DELEATE | データの削除 |
データベースの作成▼
CREATE DATABASE データベース名;
データベースを作成する場合はCREATEを使用。
指定した名前のデータベースが作成される。
データベースを選択する▼
USE データベース名;
データベースを選択するSQL文です。
テーブルを確認する▼
SHOW TABLES;
選択したデータベースに存在するテーブルを一覧で表示するSQL文。
テーブルを作成する▼
CREATE TABLE テーブル名 (カラム名 カラム名の型, ……);
テーブルを作成する場合はCREATEを使用。
テーブル名は必須、(カラム名 カラムの型)の指定もできる。
カラムの型 ▼
カラムの型 | 保存できる値 |
---|---|
INT | 数字 |
VARCHAR(M) | 最大M文字の文字列 |
カラムを追加する▼
ALTER TABLE テーブル名 操作
カラムの追加、修正、削除は全てテーブル構造の変更ということで、共通してALTERを使用。
カラムを一つだけ追加▼
ALTER TABLE テーブル名 ADD カラム名 カラムの型;
カラムを複数追加▼
ALTER TABLE テーブル名 ADD (カラム名 カラムの型, .....)
カラムの修正
ALTER TABLE テーブル名 CHANGE 古いカラム名 新しいカラム名 新しいカラムの型;
カラムの削除▼
ALTER TABLE テーブル名 DROP カラム名;
ここまでがDDLの基本操作、次からがDMLでの操作。
データを登録する▼
INSERT INTO テーブル名 VALUES(値1, 値2, 値3);
データを登録する場合に使用。
上記は複数のカラムに値を入れる場合の記法。
下記は特定のカラムに値を入れる方法です。
INSERT INTO テーブル名(カラム名1, カラム名2) VALUES(値1, 値2);
データの更新▼
UPDATE テーブル名 SET 変更内容 WHERE 条件;
データの更新をする場合に使用。
データの削除▼
DELETE FROM テーブル名 WHERE 条件;
データを削除する場合に使用。
検索するテーブルを指定▼
FROM テーブル名
検索するテーブルを指定する場合に使用。
ここからはsequel pro(シークエルプロ)を使用しています。
sequel proのメリットは以下の通り。・検索は長いSQL文を要するが、
タイプミスをしたときにその部分だけを直せば再実行が出来る。・検索は場合によって非常に多くの出力を伴うが、
それによって実行したSQL文が流れることがないため見やすい。・SQL文の文末に " ; "(セミコロン)を付ける必要がない。
取得するカラムを指定▼
SELECT カラム名
全てのカラムを取得する場合は、*(アスタリスク)を使用。
これはワイルドカードと言って、文字の代わりに扱える記号です。
取得するレコードを指定▼
WHERE 条件
取得するレコードを制限する際に使用。
条件として正であれば取得。
条件には比較演算子を使用。また、ANDやORの論理演算子も使用できる。
データの結合▼
CONCAT(文字列1, 文字列2, ……)
複数の文字列を連結する場合に使用する関数。
検索結果のカラム名の変更
SELECT 取得するデータ AS 別名
SELECTでカラムを使用した場合、ASを使うとカラムに別名を付けれる。
重複する行の除外▼
SELECT DISTINCT カラム名
指定したカラムの値の重複した行を除外してデータを取得できる。
レコードのグループ化▼
GROUP BY カラム名
指定したカラムで同じ値をもつデータを一つのグループとしてまとめる場合に使用。
レコードの数を数える▼
SELECT COUNT(カラム名)
何件のレコードがグループ化されているかというデータを取得する場合に使用。
テーブルの結合▼
FROM テーブル名1
JOIN テーブル名2 ON テーブル名1.カラム名1 = テーブル名2.カラム名2
指定したそれぞれの値と、テーブルのカラムの値が一致するデータを結合する場合に使用。
JOINはFROMの後に記述。
Author And Source
この問題について(SQL基本言語について), 我々は、より多くの情報をここで見つけました https://qiita.com/nkekisasa222/items/c3c5f3b724d9765a9ed1著者帰属:元の著者の情報は、元の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 .