SQL-構文
SQLの後には、構文と呼ばれる独自のルールとガイドラインのセットが続きます。このチュートリアルでは、すべての基本的なSQL構文をリストすることにより、SQLのクイックスタートを提供します。
すべてのSQLステートメントは、SELECT、INSERT、UPDATE、DELETE、ALTER、DROP、CREATE、USE、SHOWなどのキーワードのいずれかで始まり、すべてのステートメントはセミコロン(;)で終わります。
ここで注意すべき最も重要な点は、SQLでは大文字と小文字が区別されないことです。つまり、SELECTとselectはSQLステートメントで同じ意味を持ちます。一方、MySQLはテーブル名に違いをもたらします。したがって、MySQLを使用している場合は、データベースに存在するテーブル名を指定する必要があります。
SQLのさまざまな構文
このチュートリアルに記載されているすべての例は、MySQLサーバーでテストされています。
SQLSELECTステートメント
SELECT column1, column2....columnN
FROM table_name;
SQLDISTINCT句
SELECT DISTINCT column1, column2....columnN
FROM table_name;
SQLWHERE句
SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION;
SQLおよび/または句
SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION-1 {AND|OR} CONDITION-2;
SQLIN句
SELECT column1, column2....columnN
FROM table_name
WHERE column_name IN (val-1, val-2,...val-N);
SQLBETWEEN句
SELECT column1, column2....columnN
FROM table_name
WHERE column_name BETWEEN val-1 AND val-2;
SQLLIKE句
SELECT column1, column2....columnN
FROM table_name
WHERE column_name LIKE { PATTERN };
SQL ORDERBY句
SELECT column1, column2....columnN
FROM table_name
WHERE CONDITION
ORDER BY column_name {ASC|DESC};
SQL GROUPBY句
SELECT SUM(column_name)
FROM table_name
WHERE CONDITION
GROUP BY column_name;
SQLCOUNT句
SELECT COUNT(column_name)
FROM table_name
WHERE CONDITION;
SQLHAVING句
SELECT SUM(column_name)
FROM table_name
WHERE CONDITION
GROUP BY column_name
HAVING (arithematic function condition);
SQL CREATETABLEステートメント
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
PRIMARY KEY( one or more columns )
);
SQL DROPTABLEステートメント
DROP TABLE table_name;
SQL CREATEINDEXステートメント
CREATE UNIQUE INDEX index_name
ON table_name ( column1, column2,...columnN);
SQL DROPINDEXステートメント
ALTER TABLE table_name
DROP INDEX index_name;
SQLDESCステートメント
DESC table_name;
SQL TRUNCATETABLEステートメント
TRUNCATE TABLE table_name;
SQL ALTERTABLEステートメント
ALTER TABLE table_name {ADD|DROP|MODIFY} column_name {data_ype};
SQL ALTER TABLEステートメント(名前の変更)
ALTER TABLE table_name RENAME TO new_table_name;
SQL INSERTINTOステートメント
INSERT INTO table_name( column1, column2....columnN)
VALUES ( value1, value2....valueN);
SQLUPDATEステートメント
UPDATE table_name
SET column1 = value1, column2 = value2....columnN=valueN
[ WHERE CONDITION ];
SQLDELETEステートメント
DELETE FROM table_name
WHERE {CONDITION};
SQL CREATEDATABASEステートメント
CREATE DATABASE database_name;
SQL DROPDATABASEステートメント
DROP DATABASE database_name;
SQLUSEステートメント
USE database_name;
SQLCOMMITステートメント
COMMIT;
SQLROLLBACKステートメント
ROLLBACK;