MySQL
rank関数かdense_rank関数を使う。両関数は動作が異なり、rank関数は指定の列の値に同じ値があった場合は同位としてその次の順位を飛ばすが、dense_rank関数は同じ値があった場合は同位として次の順位は飛ばさない。両関数は指定された列の値に基づいて順位…
row_number関数を使う。over句に何も指定しなければテーブルに登録されている順に連番付けされる。以下は既存のtemptbというテーブルを利用した動作例。 mysql> select * from temptb; +------+ | no | +------+ | 20 | | 20 | | 30 | | 10 | | 40 | +------…
create table as文を使う。as句にselect文を書けばよい。以下は、二つのテーブルcharaとseiyuを内部結合した結果からchara_vcという新しいテーブルを作成した例。 mysql> show tables; +--------------------+ | Tables_in_princess | +--------------------…
use文を使う。以下はprincessというデータベースの使用を宣言した例。 mysql> use princess Database changed
in句を使う。in句の後に( )の中に値を列記すればよい。いずれにも一致しない行を取り出す場合はnot in句を使う。以下は、あらかじめ用意したテーブルumamusumeに条件を指定して行を取り出した例 mysql> select * from umamusume; +------+----------------…
内部結合(結合すべき行がない行は出力しない結合)するには、join句を使う。以下はあらかじめ用意した二つのテーブル(charaとseiyu)を内部結合した例。結合相手がない左側(chara)の4行目と右側(seiyu)の4行目は出力されていないことがわかる。 mysql>…
MySQLには完全外部結合(左右すべての行を必ず出力する結合)をする命令は搭載されていない。union演算子を使うことで同等の処理を行うことができる。結合相手がない左側(chara)の4行目と右側(seiyu)の4行目は列にNULLが挿入されて出力されていることが…
右外部結合(右側のすべての行を必ず出力する結合)するには、right join句を使う。以下はあらかじめ用意した二つのテーブル(charaとseiyu)を右外部結合した例。右側(seiyu)の4行目は左側(chara)に結合相手が見つからないため、列にNULLを挿入して6行…
load data infile文を使う。以下は、princessというデータベースを新規作成し、その中にseiyuというテーブルを作成し、あらかじめ用意しておいたファイルseiyu.csvの中身をテーブルに読み込んだ例。 seiyu.csv(文字コード:UTF-8、改行コード:CR+LF、BOM無…
左外部結合(左側のすべての行を必ず出力する結合)するには、left join句を使う。以下はあらかじめ用意した二つのテーブル(charaとseiyu)を左外部結合した例。左側(chara)の4行目は右側(seiyu)に結合相手が見つからないため、列にNULLを挿入して4行目…
ファイルの入出力に関する制限によりエラーが発生している。MySQLのファイルへのエクスポートは、あらかじめ決められらディレクトリに置かれファイルにしか行うことができない。以下はデータベースprincessのテーブルumamusumeの内容を、D:\にファイルtemp.t…
show variables文を使う。 mysql> show variables; +-----------------------------+----------------------------+ | Variable_name | Value | +-----------------------------+----------------------------+ | activate_all_roles_on_login | OFF | | adm…
delete文を使う。以下は自作のumamusumeというテーブルの、ある行を削除した例。where句で指定をした条件に一致する行はすべて削除される。 mysql> select * from umamusume; +------+------------------+------------+------------+---------------------+ …
update文を使う。以下は自作のumamusumeというテーブルの、ある行の列の値を修正した例。 mysql> select * from umamusume; +------+------------------+------------+------------+---------------------+ | no | name | prizemoney | seiyu | dummydate | …
insert文を使う。以下は自作のumamusumeというテーブルに行を追加した例。最初の例のとおりに一つだけ追加もできるし、次の例のとおりに複数まとめて追加することもできる。最後の例のとおりに、値を挿入する列を指定して行を追加することもできる。その際に…
desc文を使う。以下はumamusumeという自作のテーブルの構造を表示した例。 mysql> desc umamusume; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+---…
show tables文を使う。以下はprincessデータベースに含まれているテーブルをすべて一覧表示した例。umamusumeとwalkureという2つのテーブルが含まれていることが確認できる。 mysql> use princess; Database changed mysql> show tables; +-----------------…
select database()文を使う。データベースはuse文で使用の宣言をしなければ使用することができず、宣言をしていない場合は以下のようにNULLと表示される。 mysql> select database(); +------------+ | database() | +------------+ | NULL | +------------+…
show databases文を使う。 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | princess | | sys | +--------------------+ 5 rows in set (0.00 sec) informa…
create table文を使う。あらかじめuse文で使用するデータベースを指定しておくこと。show tables文は、そのデータベースに含まれるテーブルを一覧形式で表示することができる。以下の例ではテーブルが一つも含まれていないデータベースprincessにテーブルuma…
作成にはcreate database文、削除にはdrop database文を使う。show databasesで現在存在するデータベースを一覧形式で表示することができる。 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | |…
MySQLのコマンドラインインターフェース(CLI)であるMySQLモニターの起動には、mysqlコマンドを使う。以下はローカルホストで稼働しているMySQLに、管理用アカウントroot、そのパスワードがpassでログインをする例。 >mysql -u root -h localhost -ppass -u…
公式サイトのダウンロードページを開く。https://dev.mysql.com/downloads/windows/installer/ 2023年12月下旬時点の最新版は、バージョン8は8.0.35、バージョン5は5.7.44。「Select Version:」で「8.0.35」であることを確認し、「Select Operating System:…