SQL入門とデータベース操作の基本からCRUDまで完全解説
SQLの基礎からデータベース操作、CRUD処理まで、実践的なサンプルコードと共に解説します。初心者でも理解できる内容となっていますが、実務で使える知識も満載です。SQLマスターへの第一歩を踏み出してみませんか?
データベースは、大量のデータを効率的に管理するためのシステムです。テーブルと呼ばれる表形式でデータを格納し、それぞれのテーブルは列(カラム)と行(レコード)で構成されています。
初めてSQLを学ぶ方には、MySQLがおすすめです。無料で使え、環境構築が簡単なことに加え、インターネット上の情報も豊富です。
SQLの基本となるCRUD操作について、具体的なコード例と共に説明します。
-- テーブルの作成
CREATE TABLE users (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
)
-- データの追加(Create)
INSERT INTO users (id, name, age) VALUES (1, '山田太郎', 25)
-- データの取得(Read)
SELECT * FROM users WHERE age >= 20
-- データの更新(Update)
UPDATE users SET age = 26 WHERE name = '山田太郎'
-- データの削除(Delete)
DELETE FROM users WHERE id = 1
SELECT文は最も頻繁に使用されるSQL命令です。基本的な書き方から応用まで見ていきましょう。
-- 基本的なSELECT文
SELECT カラム名 FROM テーブル名
-- 条件付きの検索
SELECT * FROM users WHERE age >= 20
-- 並び替え
SELECT * FROM users ORDER BY age DESC
-- グループ化と集計
SELECT department, COUNT(*) as count
FROM employees
GROUP BY department
複数のテーブルを結合するJOIN操作は、実務でよく使用される重要な機能です。
-- 内部結合の例
SELECT users.name, orders.product_name
FROM users
INNER JOIN orders ON users.id = orders.user_id
-- 左外部結合の例
SELECT users.name, orders.product_name
FROM users
LEFT JOIN orders ON users.id = orders.user_id
WHERE句を使用した条件指定は、データの絞り込みに欠かせません。
-- 複数条件の組み合わせ
SELECT * FROM products
WHERE price >= 1000
AND category = '食品'
OR (category = '日用品' AND stock > 0)
-- LIKE演算子を使用したあいまい検索
SELECT * FROM users
WHERE name LIKE '%山田%'
-- IN句を使用した複数値の指定
SELECT * FROM orders
WHERE status IN ('準備中', '発送待ち', '発送済み')
これらの基本操作を組み合わせることで、複雑なデータ操作も実現できます。実際の開発現場では、これらの操作を組み合わせて使用することが多いため、基本をしっかりと押さえておくことが重要です。