「MySQL - データベース」の版間の差分

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
ナビゲーションに移動 検索に移動
(ページの作成:「== 概要 == <br><br> == 照合順序 == ==== 照合順序とは ==== MySQLにおいて、照合順序(Collation)はテーブルや列ごとに設定することができる。<br> 照合順序は、文字列の比較やソートの際に使用され、異なる言語や地域に合わせてテキストの比較を行うために重要である。<br> <br> MySQLでは、様々な照合順序が提供されている。<br> 例えば、大文字小文字を区別…」)
 
27行目: 27行目:
*: 大文字小文字を区別せず、アクセントを区別しない。
*: 大文字小文字を区別せず、アクセントを区別しない。
<br>
<br>
照合順序の詳細を知りたい場合は、MySQLの公式ドキュメントを参照すること。<br>
* MySQL 8
*: https://dev.mysql.com/doc/refman/8.0/en/charset-mysql.html
<br>
==== データベース作成時における照合順序の指定 ====
以下の例では、データベースの作成時において、照合順序をutf8mb4_unicode_ciに指定している。<br>
以下の例では、データベースの作成時において、照合順序をutf8mb4_unicode_ciに指定している。<br>
  <syntaxhighlight lang="mysql">
  <syntaxhighlight lang="mysql">
38行目: 43行目:
<u>照合順序は、データベース、テーブル、列ごとに指定することができ、異なる部分で異なる照合順序が設定されることがある。</u><br>
<u>照合順序は、データベース、テーブル、列ごとに指定することができ、異なる部分で異なる照合順序が設定されることがある。</u><br>
<br>
<br>
==== デフォルトの照合順序 ====
==== デフォルトの照合順序 ====
データベースやテーブルの照合順序が指定されていない場合、デフォルトの照合順序が使用される。<br>
データベースやテーブルの照合順序が指定されていない場合、デフォルトの照合順序が使用される。<br>

2024年1月13日 (土) 05:28時点における版

概要



照合順序

照合順序とは

MySQLにおいて、照合順序(Collation)はテーブルや列ごとに設定することができる。
照合順序は、文字列の比較やソートの際に使用され、異なる言語や地域に合わせてテキストの比較を行うために重要である。

MySQLでは、様々な照合順序が提供されている。
例えば、大文字小文字を区別やアクセントを考慮するかどうか等の違いがある。

  • utf8mb4_general_ci
    大文字小文字を区別せず、アクセントを区別しない。
    通常の比較の場合には適しているが、文字の並び順は一般的な場合に従う。

  • utf8mb4_bin
    バイナリ比較を行う。
    大文字小文字やアクセント等を区別して、バイト単位で比較する。
    これは厳密なバイナリ比較が必要な場合に使用される。

  • utf8_general_ci
    utf8mb4と同様、大文字小文字を区別せず、アクセントを区別しない。
    ただし、utf8mb4よりも少ない文字セットを使用する。

  • latin1_swedish_ci
    ラテン1文字セットに基づいた照合順序であり、スウェーデンの標準に従う。
    大文字小文字を区別せず、アクセントを区別しない。


照合順序の詳細を知りたい場合は、MySQLの公式ドキュメントを参照すること。


データベース作成時における照合順序の指定

以下の例では、データベースの作成時において、照合順序をutf8mb4_unicode_ciに指定している。

 CREATE DATABASE <データベース名> {
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;
 };


※注意
照合順序は、データベース、テーブル、列ごとに指定することができ、異なる部分で異なる照合順序が設定されることがある。

デフォルトの照合順序

データベースやテーブルの照合順序が指定されていない場合、デフォルトの照合順序が使用される。

一般的に、MySQLのデフォルトの照合順序は、サーバの文字セットに基づいている。
例えば、MySQLデータベースを作成時に指定された文字セットに応じて、デフォルトの照合順序が選択される。

一般的なデフォルトの文字セットと照合順序の組み合わせには、以下に示すようなものがある。
ほとんどの場合、UTF-8マルチバイト文字セットとその一般的な照合順序がデフォルトとして使用される。

  • utf8mb4
  • utf8mb4_general_ci


デフォルトの照合順序を確認する場合は、以下に示すクエリを実行する。

 SHOW VARIABLES LIKE 'collation%';


このクエリは、サーバの照合順序に関する情報を表示する。
デフォルトの照合順序は、collation_serverとして表示される。