はじめに
はじめてSQLを触ったので調べたことについてまとめました
MySQL の操作
MySQL の起動
パスワード無しでログイン
mysql.server start --skip-grant-tables
実行
mysql -u root
mySQL 状態確認
バージョン確認
mysql> show variables like 'version';
セッション統計情報の表示
mysql> show status;
現在の同時接続数を表示
mysql> show status like "Threads_connected";
ユーザ状態確認、操作
ログイン中のユーザ表示
mysql> select user();
現在ログイン中ユーザの権限確認
mysql> show grants;
データベース状態確認、操作
データベース一覧を表示
mysql> show databases;
使用するデータベースを選択(セミコロン不要)
mysql> use [db_name]
データベースの作成
mysql> create database [db_name]
データベースの削除
mysql> drop database [db_name]
テーブル状態確認
テーブル一覧を表示
mysql> show tables;
テーブル一覧のステータス情報を表示
mysql> show tables status;
カラム一覧を表示
mysql> desc [table_name];
カラム一覧を表示、Collation 付き。
mysql> show full columns from [table_name];
特定テーブルのインデックスを確認
mysql> show index form [table_name];
退出
mysql> exit
MySQL の停止
mysql.server stop
名前
テーブルの構造
A1 | B1 | C1 |
---|---|---|
A2 | B2 | C2 |
A3 | B3 | C3 |
カラム:縦の列 A,B,C
レコード:横の行 1,2,3
クエリ:データベースに送る命令
操作
最後
;
セミコロンをつける
データの取得
カラム
選択
SELECT name1,name2
全て
SELECT \*
テーブル
FROM name
データだけを取得
WHERE column_name = name
WHERE colum_name LIKE "string"
ワイルドカード
前
WHERE colum_name LIKE "%string"
両方
WHERE colum_name LIKE "%string%"
後
WHERE colum_name LIKE "string%"
否定の条件
WHERE NOT colum_name ~~~
NULL の取得
WHERE price IS NULL
WHERE price IS NOT NULL
禁止
WHERE price = NUll
AND 演算子
WHERE colum_name1 = "string"
AND colum_name2 = "string2"
OR 演算子
WHERE colum_name1 = "string"
OR colum_name2 = "string2"
データ並び替える
ORDER BY colum_name 並べ方
ORDER BY と WHERE は両立可能
並べ方
昇順
ORDER BY colum_name ASC
降順
ORDER BY colum_name DESC
取得する件数
上から指定されただけ取得
LIMIT : データの件数
ORDER BY と WHERE は併用可能
ORDER BY と併用するときは LIMIT を末尾に
データ型
number
"strig"
"yyyy-mm--dd"
検索結果の操作
重複したデータを除く
SELECT DISTINCT(colum_name)
FROM ~~
四則演算
culom_name + number
culom_name - number
culom_name \* number
culom_name / number
SELECT culom_name \* number
まとめ
SQLをとりあえず動かすために調べました。