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?

はじめに

PostgreSQL を学び始めたばかりの方向けに、最初に覚えておくと便利な SQL 基本構文を実行例とともに整理しました。DBとは何ぞやってのは飛ばして、「クエリ」に絞って書いてます。


1. テーブルを作成する(CREATE TABLE)

CREATE TABLE users (
  id SERIAL PRIMARY KEY,
  name TEXT NOT NULL,
  age INT,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

2. データを挿入する(INSERT)

INSERT INTO users (name, age)
VALUES ('太郎', 25),
       ('花子', 30);

3. データを取得する(SELECT)

-- 全件取得
SELECT * FROM users;

-- 条件付き取得
SELECT id, name
FROM users
WHERE age >= 30
ORDER BY id DESC;

4. データを更新する(UPDATE)

UPDATE users
SET age = 30
WHERE id = 2;

WHERE句をしっかり指定してあげないと、全データ置き換わってしまうことがあるので注意!!!!(経験済み)
(バックアップがあったので耐えましたが、さすがに焦りました)


5. データを削除する(DELETE)

DELETE FROM users
WHERE id = 1;

UPDATEと同様こちらもWHERE句をしっかり指定してあげてください。


6. テーブルを結合する(JOIN)

まず orders テーブルを用意します。

CREATE TABLE orders (
  id SERIAL PRIMARY KEY,
  user_id INT REFERENCES users(id),
  total INT
);

結合例:

SELECT u.name, o.total
FROM users AS u
JOIN orders AS o ON o.user_id = u.id;

7. インデックスを作成する(CREATE INDEX)

CREATE INDEX idx_users_age ON users(age);

検索しやすいように索引を付けてあげるイメージです。


8. テーブル構造を確認する(\d コマンド)

psql コンソールで実行:

\d users

まとめ

  • CREATE TABLE で基本構造と制約を定義する
  • INSERT / SELECT / UPDATE / DELETE が CRUD 基本操作である
  • JOIN で複数テーブルを連携させる
  • INDEX は検索性能向上に有効だが、過剰な作成は避ける

本記事の構文を実際に試すことで、PostgreSQL の基礎が確実に身に付きます。
次のステップとして ビュー・サブクエリ・ウィンドウ関数 を学ぶと、SQL の表現力がさらに広がりますよ~。

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?