SQL

SQLリファレンス。

標準SQLについてはSee SQL

DML

INSERT

Examples:

INSERT INTO animals (name) VALUES
    ('dog'),('cat'),('penguin'),
    ('lax'),('whale'),('ostrich');

DDL

CREATE DATABASE

Examples:

CREATE DATABASE foo CHARACTER SET utf8mb4;

参考:

CREATE TABLE

Examples:

CREATE TABLE animals (
     id MEDIUMINT NOT NULL AUTO_INCREMENT,
     name CHAR(30) NOT NULL,
     PRIMARY KEY (id)
);

Tips:

  • CREATE TABLE B LIKE A; でテーブルAと同じカラム構成のテーブルBを作れる。

参考:

ALTER TABLE

Examples:

-- AUTO_INCREMENT値のリセット
ALTER TABLE foo AUTO_INCREMENT = 1

-- RENAME TABLE相当
ALTER TABLE A RENAME [TO|AS] B

参考:

RENAME TABLE

Examples:

RENAME TABLE A TO B [, C TO D [...]]

関数

LEFT, RIGHT

文字列の左端 or 右端からの部分文字列を取得。

Syntax:

LEFT(str, len)
RIGHT(str, len)

参考:

その他

DO

https://dev.mysql.com/doc/refman/8.0/en/do.html

Examples:

DO SLEEP(5);

SELECT ... と違って、結果を返さずに関数を実行。

SHOW BINARY LOGS

binlogファイルを一覧表示する

SHOW BINARY LOGS
SHOW MASTER LOGS

SHOW BINLOG EVENTS

Syntax:

SHOW BINLOG EVENTS
   [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]

NOTE:

  • LIMIT句なしで指定すると全バイナリログの内容を出力するので、リソースを大量に消費する可能性がある

SHOW GRANTS

https://dev.mysql.com/doc/refman/8.0/en/show-grants.html

Examples:

-- 現在のユーザの権限を表示
SHOW GRANTS;

SHOW MASTER STATUS

https://dev.mysql.com/doc/refman/8.0/en/show-master-status.html

現在のbinlogポジションがわかる。

SHOW SLAVE STATUS

https://dev.mysql.com/doc/refman/8.0/en/show-slave-status.html

レプリケーションしている場合に、レプリケーションの遅延など情報がわかる。

Tips