sql >> データベース >  >> RDS >> Mysql

MySQL CHAR()関数とUTF8出力?

    UTF-8とUnicodeを混同しています。

    0x00FCはUnicode üのコードポイント:

    mysql> select char(0x00FC using ucs2);
    +----------------------+
    | char(0x00FC using ucs2) |
    +----------------------+
    | ü                   | 
    +----------------------+
    

    UTF-8 エンコーディング、0x00FC 2バイトで表されます

    mysql> select char(0xC3BC using utf8);
    +-------------------------+
    | char(0xC3BC using utf8) |
    +-------------------------+
    | ü                      | 
    +-------------------------+
    

    UTF-8は、単なるエンコードの方法です。 バイナリ形式のUnicode文字。これはスペース効率を高めることを目的としているため、ASCII文字は1バイトしか使用せず、üなどのiso-8859-1文字は2バイトしか使用しません。他のいくつかの文字は3バイトまたは4バイトかかりますが、それほど一般的ではありません。



    1. 前の残高行に基づいて合計を更新します

    2. JavaでのFork/JoinFrameworkを使用した並列プログラミングの基本

    3. ORA-01950:表領域'USERS'に対する権限がありません

    4. SQL-多くの条件ですべての列の間に多くの単語を出力します