MySql初心者入門の基本操作まとめ
ライブラリの操作
クエリー
1.SHOW DATABASE、----すべてのデータベースを検索
2.SHOW CREATE DATABASEデータベース名、----データベースの作成モードをクエリー
3.SHOW CREATE DATABASE xxx、----xxxデータベースの作成モードを検索します。
作成
1.REATE DATABASEデータベース名データベースの作成
注:既存のデータベースを作成してはいけません。
2.CREATE DATABASE IS NOT EXISTSデータベース名;----データベースが存在するかどうかを判断します。存在しないなら作成します。
3.CREATE DATABASEデータベース名CHARACT SET文字セット名;データベースを作成して文字セットを指定します。一般的にはutf-8を使用します。
変更
ALTER DATABASEデータベース名CHARACER SET文字セット名データベースの文字セットを変更します。
削除
1.DROP DATABASEデータベース名、----データベースを削除
2.DROP DATABASE IS EXISTSデータベース名、----存在するかどうかを判断してから削除します。
使用
SELETE DATABASE()----現在使用中のデータベースを照会します。
USEデータベース名;----指定されたデータベースを使う
テーブル構造
テーブルのクエリー
1.SHOW TABLES、----データベース内のすべてのテーブルを検索します。
2.DESC表名、----指定されたテーブルの構造を表示します。
3.SHOW TABLE STATURS FROM倉庫名LIKE‘表名’;クエリーテーブルの文字セット(likeは特にない場合と「=」は等価です)
テーブルを作成
CREATE TABLE表名(
列名1データタイプ1制約、
列名2データタイプ2制約、
…
列名nデータタイプn制約
)0
int:整数の種類 age int
double:小数の種類 score double(5,2) price double
date:日付は、年月日yyy-M-ddのみを含みます。
datetime:日付、年月日を含む時分秒yy-M-dd HH:mm:ss
timestamp:タイムスタンプの種類は、年月日時の分秒yyy-M-dd HH:mm:ssを含みます。このフィールドに将来値を与えない場合、またはnullに値を割り当てない場合、デフォルトでは現在のシステム時間を使用して、自動的に値を割り当てます。
varrhar:文字列 name varhar(20):名前最大20文字 zhangsan 8文字テンソル3文字
CREATE TABLEが作成するテーブル名LIKEがコピーされたテーブル名。表を複製する
表の変更
1.ALTER TABLE表名RENAME TO新しい表名;表の名前を変更
2.ALTER TABLE表名CHARACER SET文字集名称、----表の文字セットを変更します。
**3.**ALTER TABLE表名ADD列名データタイプ;新しい列を追加します
4.ALTER TABLE表名MODIFY列名新列名データタイプ;新しい列名とデータの種類を変更します。
テーブルの削除操作
1.DROP TABLE表名、----テーブルを削除
2.ALTER TABLE表名DROP列名、----列を削除
表にデータを追加する-INSERT文
1.INSERT INTOテーブル名(列名1、列名2、…)VALES(値1、値2、…);表にそえる
データを追加
2.SELECT*FROM product;----すべてのデータを表示します。
3.INSERT INTOテーブル名VULES(値1、値2、値3、…);デフォルトではすべての列にデータを追加します。
4.INSERT INTOテーブル名VULES(値1、値2、値3、…)、(値1、値2、値3、…)、(値1、値2、値3、…);一括追加データ
注:列名と値の数、およびデータタイプは に対応します。数字タイプを除いて、他のデータタイプのデータには引用符が必要です。
表の修正データ-udata
UPDATE表名SET列名1=値1、列名2=値2、...[where条件]
注:修正文に条件を付けなければなりません。条件を付けないとすべてのデータが修正されます。
テーブルからデータを削除→delete
DELETE FROM表名[WHERE条件]
注:は修正データと同じです。
単一テーブルクエリ
クエリー文法:
selectフィールドリストfromテーブル名リストwhere条件リストgroup byパケットフィールドhavingパケットの後の条件order by順序limit改ページ限定
SELECT列名1、列名2、…FROM表名;複数のフィールドクエリ
SELECT DISTINCT列名1、列名2、…FROM表名;再検索に行きますが、お問い合わせの列が重複しているだけです。
SELECT列名1演算子(+-*/)列名2 FROM表名;四則演算
SELECT列名1、列名2、…ASの別名FROM表名;asは別名でわかりやすいです。
条件クエリー
条件分類
記号
機能
>
大きい
<>
以下
>=
大なりイコール
<=
以下
を選択します。
等しい
<>==
等しくない
BETWEEN…AND…
ある範囲(全部含む)
IN(…)
もう一つ選ぶ
LIKEプレースホルダ
あいまい検索任意の文字%以上の任意の文字
IS NULL
NULLです
IS NOT NULL
NULLではありません
ANDか&&&
そして
ORまたは124
または
NOTか
いいえ、ちがいます
集計関数
関数名とその機能
関数名
機能
count(列名)
統計数量(一般的にはnullではない列を選択)
max(列名)
最大値
min(列名)
最小値
sum(列名)
和を乞う
avg(列名)
平均値
集計関数文法
カテゴリ
キーワード
機能
ORDER BY列名1ソート方式1、列名2ソート方式2
指定された列の並べ替え、ASC昇順(デフォルト)DESC降順
-注:複数の並べ替え条件の場合、現在の辺の条件値が同じであれば、第二条件が判断されます。
並べ替え文法
1.制約の概念と分類
制約の概念テーブルのデータを限定して、データの正確性、有効性、完全性を保証します。
制約の分類
制約
説明
PRIMARY KEY
キー制約
PRIMARY KEY AUTO_INCREMENT
メインキー、自動成長
UNIQUE
一意の制約
NOT NULL
非空制約
FOREGN KEY
外部結合の制約
FOREIGN KEY ON UPDATCASCADE
外連結の更新
FOREGN KEY ON DELETE CASCADE
外キーカスケードの削除
2.メインキー制約
主結合制約の特徴キー制約は、非空と唯一の2つの機能 を含む。テーブルは一つの列だけがメインキー として機能します。キーは、テーブル内のデータの一意の識別に一般的に使用されます。
表を作る時に、メインキー制約を追加します。
表を作る時、メインキーを追加してから制約を増加します。
表を作る時に一意の制約を追加します。
表を作る時に空の制約を追加します。
外部キー制約の書式(一般的には作成表の最後にこれらを書きます。)
CONSTRAINT外部キー名FOREEGN KEY(本表の外部キー列名)REFERENCESマスタテーブル名(メインテーブルキー列名)
締め括りをつける
ここで、MySql初心者入門の基本操作についてまとめた文章を紹介します。MySql基本操作の内容については、以前の文章を検索したり、次の関連記事を見たりしてください。これからもよろしくお願いします。
クエリー
1.SHOW DATABASE、----すべてのデータベースを検索
2.SHOW CREATE DATABASEデータベース名、----データベースの作成モードをクエリー
3.SHOW CREATE DATABASE xxx、----xxxデータベースの作成モードを検索します。
作成
1.REATE DATABASEデータベース名データベースの作成
注:既存のデータベースを作成してはいけません。
2.CREATE DATABASE IS NOT EXISTSデータベース名;----データベースが存在するかどうかを判断します。存在しないなら作成します。
3.CREATE DATABASEデータベース名CHARACT SET文字セット名;データベースを作成して文字セットを指定します。一般的にはutf-8を使用します。
変更
ALTER DATABASEデータベース名CHARACER SET文字セット名データベースの文字セットを変更します。
削除
1.DROP DATABASEデータベース名、----データベースを削除
2.DROP DATABASE IS EXISTSデータベース名、----存在するかどうかを判断してから削除します。
使用
SELETE DATABASE()----現在使用中のデータベースを照会します。
USEデータベース名;----指定されたデータベースを使う
テーブル構造
テーブルのクエリー
1.SHOW TABLES、----データベース内のすべてのテーブルを検索します。
2.DESC表名、----指定されたテーブルの構造を表示します。
3.SHOW TABLE STATURS FROM倉庫名LIKE‘表名’;クエリーテーブルの文字セット(likeは特にない場合と「=」は等価です)
テーブルを作成
CREATE TABLE表名(
列名1データタイプ1制約、
列名2データタイプ2制約、
…
列名nデータタイプn制約
)0
int:整数の種類
datetime:日付、年月日を含む時分秒yy-M-dd HH:mm:ss
timestamp:タイムスタンプの種類は、年月日時の分秒yyy-M-dd HH:mm:ssを含みます。
表の変更
1.ALTER TABLE表名RENAME TO新しい表名;表の名前を変更
2.ALTER TABLE表名CHARACER SET文字集名称、----表の文字セットを変更します。
**3.**ALTER TABLE表名ADD列名データタイプ;新しい列を追加します
4.ALTER TABLE表名MODIFY列名新列名データタイプ;新しい列名とデータの種類を変更します。
テーブルの削除操作
1.DROP TABLE表名、----テーブルを削除
2.ALTER TABLE表名DROP列名、----列を削除
表にデータを追加する-INSERT文
1.INSERT INTOテーブル名(列名1、列名2、…)VALES(値1、値2、…);表にそえる
データを追加
2.SELECT*FROM product;----すべてのデータを表示します。
3.INSERT INTOテーブル名VULES(値1、値2、値3、…);デフォルトではすべての列にデータを追加します。
4.INSERT INTOテーブル名VULES(値1、値2、値3、…)、(値1、値2、値3、…)、(値1、値2、値3、…);一括追加データ
注:
UPDATE表名SET列名1=値1、列名2=値2、...[where条件]
注:
DELETE FROM表名[WHERE条件]
注:
クエリー文法:
selectフィールドリストfromテーブル名リストwhere条件リストgroup byパケットフィールドhavingパケットの後の条件order by順序limit改ページ限定
SELECT列名1、列名2、…FROM表名;複数のフィールドクエリ
SELECT DISTINCT列名1、列名2、…FROM表名;再検索に行きますが、お問い合わせの列が重複しているだけです。
SELECT列名1演算子(+-*/)列名2 FROM表名;四則演算
SELECT列名1、列名2、…ASの別名FROM表名;asは別名でわかりやすいです。
条件クエリー
条件分類
記号
機能
>
大きい
<>
以下
>=
大なりイコール
<=
以下
を選択します。
等しい
<>==
等しくない
BETWEEN…AND…
ある範囲(全部含む)
IN(…)
もう一つ選ぶ
LIKEプレースホルダ
あいまい検索任意の文字%以上の任意の文字
IS NULL
NULLです
IS NOT NULL
NULLではありません
ANDか&&&
そして
ORまたは124
または
NOTか
いいえ、ちがいます
集計関数
関数名とその機能
関数名
機能
count(列名)
統計数量(一般的にはnullではない列を選択)
max(列名)
最大値
min(列名)
最小値
sum(列名)
和を乞う
avg(列名)
平均値
集計関数文法
--
SELECT ( ) FROM [WHERE ];
-- product
SELECT COUNT(*) FROM product;
--
SELECT MAX(price) FROM product;
--
SELECT NAME,price FROM product WHERE price = (SELECT MAX(price) FROM product);
--
SELECT MIN(stock) FROM product;
--
SELECT NAME,stock FROM product WHERE stock = (SELECT MIN(stock) FROM product);
--
SELECT SUM(stock) FROM product;
--
SELECT SUM(stock) FROM product WHERE brand=' ';
--
SELECT AVG(price) FROM product WHERE brand=' ';
クエリーの並べ替えカテゴリ
キーワード
機能
ORDER BY列名1ソート方式1、列名2ソート方式2
指定された列の並べ替え、ASC昇順(デフォルト)DESC降順
-注:複数の並べ替え条件の場合、現在の辺の条件値が同じであれば、第二条件が判断されます。
並べ替え文法
--
SELECT FROM [WHERE ] ORDER BY 1 1, 2 2;
--
SELECT * FROM product ORDER BY stock ASC;
グループクエリ
--
SELECT FROM [WHERE ] GROUP BY [HAVING ] [ORDER BY ];
ページ別に照会する
--
SELECT FROM [WHERE ] GROUP BY [HAVING ] [ORDER BY ] LIMIT , ;
-- : = ( -1) *
制約1.制約の概念と分類
制約の概念
制約
説明
PRIMARY KEY
キー制約
PRIMARY KEY AUTO_INCREMENT
メインキー、自動成長
UNIQUE
一意の制約
NOT NULL
非空制約
FOREGN KEY
外部結合の制約
FOREIGN KEY ON UPDATCASCADE
外連結の更新
FOREGN KEY ON DELETE CASCADE
外キーカスケードの削除
2.メインキー制約
主結合制約の特徴
--
CREATE TABLE (
PRIMARY KEY,
,
...
);
-- student
CREATE TABLE student(
id INT PRIMARY KEY -- id
);
--
INSERT INTO student VALUES (1),(2);
-- , ,
INSERT INTO student VALUES (2);
-- , null
INSERT INTO student VALUES (NULL);
-- student
SELECT * FROM student;
-- student
DESC student;
メインキーを削除
--
ALTER TABLE DROP PRIMARY KEY;
--
ALTER TABLE student DROP PRIMARY KEY;
表を作ってから単独でメインキーを追加します。
--
ALTER TABLE MODIFY PRIMARY KEY;
--
ALTER TABLE student MODIFY id INT PRIMARY KEY;
3.メインキーの自動成長制約表を作る時、メインキーを追加してから制約を増加します。
--
CREATE TABLE (
PRIMARY KEY AUTO_INCREMENT,
,
...
);
-- student2
CREATE TABLE student2(
id INT PRIMARY KEY AUTO_INCREMENT -- id
);
--
INSERT INTO student2 VALUES (1),(2);
-- null ,
INSERT INTO student2 VALUES (NULL),(NULL);
-- student2
SELECT * FROM student2;
-- student2
DESC student2;
自動成長を削除
--
ALTER TABLE MODIFY ;
--
ALTER TABLE student2 MODIFY id INT;
表を作って単独で自動成長を追加します。
--
ALTER TABLE MODIFY AUTO_INCREMENT;
--
ALTER TABLE student2 MODIFY id INT AUTO_INCREMENT;
4.一意制約表を作る時に一意の制約を追加します。
--
CREATE TABLE (
UNIQUE,
,
...
);
-- student3
CREATE TABLE student3(
id INT PRIMARY KEY AUTO_INCREMENT,
tel VARCHAR(20) UNIQUE -- tel
);
--
INSERT INTO student3 VALUES (NULL,'18888888888'),(NULL,'18666666666');
-- ,
INSERT INTO student3 VALUES (NULL,'18666666666');
-- student3
SELECT * FROM student3;
-- student3
DESC student3;
一意の制約を削除
--
ALTER TABLE DROP INDEX ;
--
ALTER TABLE student3 DROP INDEX tel;
表を作成して単独で一意の制約を追加します。
--
ALTER TABLE MODIFY UNIQUE;
--
ALTER TABLE student3 MODIFY tel VARCHAR(20) UNIQUE;
5.非空制約表を作る時に空の制約を追加します。
--
CREATE TABLE (
NOT NULL,
,
...
);
-- student4
CREATE TABLE student4(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(20) NOT NULL -- name
);
--
INSERT INTO student4 VALUES (NULL,' '),(NULL,' ');
-- null ,
INSERT INTO student4 VALUES (NULL,NULL);
非空制約を削除
--
ALTER TABLE MODIFY ;
--
ALTER TABLE student4 MODIFY NAME VARCHAR(20);
表を作成して単独で空の制約を追加します。
--
ALTER TABLE MODIFY NOT NULL
--
ALTER TABLE student4 MODIFY NAME VARCHAR(20) NOT NULL;
外部結合の制約外部キー制約の書式(一般的には作成表の最後にこれらを書きます。)
CONSTRAINT外部キー名FOREEGN KEY(本表の外部キー列名)REFERENCESマスタテーブル名(メインテーブルキー列名)
締め括りをつける
ここで、MySql初心者入門の基本操作についてまとめた文章を紹介します。MySql基本操作の内容については、以前の文章を検索したり、次の関連記事を見たりしてください。これからもよろしくお願いします。