SQL - 文法: 初心者向けガイド
こんにちは、未来のデータベース魔术師たち!今日は、SQL文法の魔法の世界に飛び込みます。コードを書いたことがない人も心配しないでください - 最初から始めて、少しずつ進んでいきます。このチュートリアルの終わりまでに、プロのようにSQLの呪文を唱えることができるようになるでしょう!
SQL文法とは?
SQL文法は、SQL言語の文法のようなものです。英語で意味のある文を構築するために文法規則を使うのと同じように、SQL文法を使ってデータベースが理解できるコマンドを書きます。新しい言語を学ぶようなものですが、人間ではなくデータベースと会話をしているだけです!
SQLコマンドの基本構造
ほとんどのSQLコマンドは以下のようなシンプルな構造に従います:
ACTION what_to_do FROM where_to_do_it WHERE conditions;
これを分解すると:
- ACTION: 行いたいこと(例:SELECT、INSERT、UPDATE)
- what_to_do: 行動を起こす対象(例:列名)
- FROM: 使用しているテーブル
- WHERE: 追加する条件
今のところ抽象的すぎるかもしれませんが、すぐに例を見ていきましょう!
大文字・小文字の区別
面白い事实ですが、SQLは大文字と小文字を区別しません!つまり、コマンドを大文字、小文字、またはその混合で書くことができます。以下はすべて有効で、等価です:
SELECT * FROM Customers;
select * from customers;
SeLeCt * FrOm CuStOmErS;
しかし、できるからといってそうすべきではありません。私が教えてきた年の中で、一貫したスタイルを使うことでコードが読みやすく保守がしやすくなることが分かっています。SQLキーワードは大文字、テーブル名と列名は小文字を使うことをお勧めします。コードをきれいなスーツに着せたようなものです - プロフェッショナルで目に優しいです!
SQLテーブル
SQLステートメントに進む前に、テーブルについて話しましょう。SQLでは、データはテーブルに整理されます。テーブルには名前があり、行と列で構成されています。
以下は「Customers」テーブルの簡単な例です:
CustomerID | FirstName | LastName | |
---|---|---|---|
1 | John | Doe | [email protected] |
2 | Jane | Smith | [email protected] |
3 | Bob | Johnson | [email protected] |
このテーブルでは:
- 「CustomerID」、「FirstName」、「LastName」、「Email」は列名です
- 各行は個々の顧客データを表します
SQLステートメント
では、楽しい部分に進みましょう - SQLステートメント!データベースとのやりとりに使用するコマンドで、基本的には4種類のステートメントを扱います:SELECT、INSERT、UPDATE、DELETE。
SELECTステートメント
SELECTステートメントは、データベースからデータを取得するために使用されます。データベースに質問をして答えを得るようなものです。
SELECT column1, column2 FROM table_name;
例えば、私たちの「Customers」テーブルからすべての顧客名を取得したい場合:
SELECT FirstName, LastName FROM Customers;
これは以下のようになります:
FirstName | LastName |
---|---|
John | Doe |
Jane | Smith |
Bob | Johnson |
すべての列を選択するためにアスタリスク(*)を使うこともできます:
SELECT * FROM Customers;
これは「Customers」テーブルのすべてのデータを返します。
INSERTステートメント
INSERTステートメントは、テーブルに新しいデータを追加するために使用されます。アドレス帳に新しいエントリを追加するようなものです。
INSERT INTO table_name (column1, column2, column3)
VALUES (value1, value2, value3);
例えば、新しい顧客を追加する場合:
INSERT INTO Customers (CustomerID, FirstName, LastName, Email)
VALUES (4, 'Alice', 'Wonder', '[email protected]');
このコマンドの後、私たちの「Customers」テーブルは以下のようになります:
CustomerID | FirstName | LastName | |
---|---|---|---|
1 | John | Doe | [email protected] |
2 | Jane | Smith | [email protected] |
3 | Bob | Johnson | [email protected] |
4 | Alice | Wonder | [email protected] |
UPDATEステートメント
UPDATEステートメントは、テーブル内の既存データを修正するために使用されます。アドレス帳の間違いを訂正するようなものです。
UPDATE table_name
SET column1 = value1, column2 = value2
WHERE condition;
例えば、Bob Johnsonがメールを変更した場合:
UPDATE Customers
SET Email = '[email protected]'
WHERE CustomerID = 3;
このコマンドの後、Bobのメールは以下のように更新されます。
DELETEステートメント
DELETEステートメントは、テーブルからデータを削除するために使用されます。アドレス帳からエントリを消去するようなものです。
DELETE FROM table_name WHERE condition;
例えば、John Doeが顧客でなくなった場合:
DELETE FROM Customers WHERE CustomerID = 1;
これはJohnの行を「Customers」テーブルから削除します。
結論
おめでとうございます!SQL文法の世界への最初の一歩を踏み出しました。SQLを学ぶことは、他の新しいスキルを学ぶのと同じで - 練習が重要です。これらのコマンドを試してみて、すぐにプロのようにクエリを書けるようになるでしょう!
以下は、私たちがカバーしたSQLステートメントの簡単な参照表です:
ステートメント | 目的 | 基本構文 |
---|---|---|
SELECT | データの取得 | SELECT column FROM table WHERE condition; |
INSERT | 新しいデータの追加 | INSERT INTO table (columns) VALUES (values); |
UPDATE | 既存データの修正 | UPDATE table SET column = value WHERE condition; |
DELETE | データの削除 | DELETE FROM table WHERE condition; |
続けて練習し、好奇心を持ち続けてください。そして、忘れてはならないのは、すべての専門家もかつては初心者だったということです。ハッピーコーディング!
Credits: Image by storyset