いつも忘れるのでメモしておく。
SQL(Structured Query Langage)は、リレーショナルデータベースを操作するための言語です。以下は、SQLの基本的な操作に関する解説です。
1. SELECT – データの取得
データベースからデータを取得するための命令です。
SELECT column1, column2, ...
FROM table_name
WHERE condition;
例:
SELECT first_name, last_name
FROM users
WHERE age > 18;
2. INSERT INTO – データの追加
新しいレコードをテーブルに追加します。
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
例:
INSERT INTO users (first_name, last_name, age)
VALUES ('John', 'Doe', 25);
3. UPDATE – データの変更
既存のレコードを変更します。
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
例:
UPDATE users
SET age = 26
WHERE first_name = 'John' AND last_name = 'Doe';
4. DELETE – データの削除
レコードをテーブルから削除します。
DELETE FROM table_name
WHERE condition;
例:
DELETE FROM users
WHERE first_name = 'John' AND last_name = 'Doe';
5. CREATE TABLE – テーブルの作成
新しいテーブルを作成します。
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...
);
例:
CREATE TABLE users (
user_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
age INT
);
6. ALTER TABLE – テーブルの変更
テーブルの構造を変更します。
ALTER TABLE table_name
ADD column_name datatype;
例:
ALTER TABLE users
ADD email VARCHAR(100);
7. DROP TABLE – テーブルの削除
テーブルを削除します。
DROP TABLE table_name;
例:
DROP TABLE users;
8. INDEX – インデックスの作成
データベースの検索性能を向上させるために、テーブルの列にインデックスを作成します。
CREATE INDEX index_name
ON table_name (column_name);
例:
CREATE INDEX idx_lastname
ON users (last_name);
了解しました。以下に、指定された3つのシナリオに関するSQLの基本操作を追加します。
9. 特定のカラムのデータを取得する場合
SELECT
文を使用して、特定のカラムからデータを取得します。
SELECT column_name1, column_name2, ...
FROM table_name
WHERE condition;
例:
SELECT first_name, age
FROM users
WHERE city = 'Tokyo';
この例では、users
テーブルからfirst_name
とage
のカラムのデータを取得しています。条件として、city
がTokyo
であるレコードのみを取得します。
10. 特定のレコードを更新する場合
UPDATE
文を使用して、特定の条件に一致するレコードを更新します。
UPDATE table_name
SET column_name1 = value1, column_name2 = value2, ...
WHERE condition;
例:
UPDATE users
SET email = 'john.doe@example.com'
WHERE first_name = 'John' AND last_name = 'Doe';
この例では、users
テーブルのfirst_name
がJohn
で、last_name
がDoe
のレコードのemail
カラムをjohn.doe@example.com
に更新しています。
11. 複数テーブルを結合して1つのデータとして出力する場合
JOIN
句を使用して、複数のテーブルを結合します。
SELECT column_name1, column_name2, ...
FROM table_name1
JOIN table_name2
ON table_name1.column_name = table_name2.column_name
WHERE condition;
例:
SELECT users.first_name, users.last_name, orders.order_date
FROM users
JOIN orders
ON users.user_id = orders.user_id
WHERE orders.order_date > '2022-01-01';
この例では、users
テーブルとorders
テーブルをuser_id
カラムで結合しています。結果として、2022年1月1日以降の注文日を持つすべてのユーザーの名前と注文日を取得します。
これらの操作を組み合わせることで、データベースから必要な情報を効率的に取得、更新、結合することができます。
これらはSQLの基本的な操作の一部です。SQLは非常に強力で柔軟な言語であり、これらの基本的な操作を組み合わせることで、さまざまなデータベースタスクを実行することができます。