MySQL 5.1 リファレンスマニュアル :: 11 関数と演算子 :: 11.3 文字列関数
« 11.2 制御フロー関数

11.3.1 文字列比較関数 »
Section Navigation      [Toggle]
  • 11 関数と演算子
  • 11.1 演算子
  • 11.2 制御フロー関数
  • 11.3 文字列関数
    • 11.3.1 文字列比較関数
    • 11.3.2 正規表現
  • 11.4 数字関数
  • 11.5 日付時刻関数
  • 11.6 MySQL が使用するカレンダーは ?
  • 11.7 全文検索関数
  • 11.8 キャスト関数と演算子
  • 11.9 XML 関数
  • 11.10 その他の関数
  • 11.11 GROUP BY 句との関数および修飾子の使用

11.3. 文字列関数

[+/-]

11.3.1. 文字列比較関数
11.3.2. 正規表現

文字列値の関数は、結果の長さが max_allowed_packet システム環境変数より長くなると、NULL を返します。項6.5.2. 「サーバパラメータのチューニング」 を参照してください。

ストリングの位置を演算する関数では、最初の位置は 1 と数値付けられます。

  • ASCII(str)

    ストリング str の左側の文字の数値を戻します。str が空のストリングである場合は、0 を戻します。str が NULL である場合は NULL を戻します。ASCII() は、0 から 255 の数値を持つ文字に使用できます。

    mysql> SELECT ASCII('2');
            -> 50
    mysql> SELECT ASCII(2);
            -> 50
    mysql> SELECT ASCII('dx');
            -> 100
    

    ORD() 関数も併せてご参照ください。

  • BIN(N)

    N のバイナリ値の文字列表現を戻します。N は longlong ( BIGINT ) 数字です。これは、CONV(N,10,2) に等価になります。N が NULL である場合は NULL を戻します。

    mysql> SELECT BIN(12);
            -> '1100'
    
  • BIT_LENGTH(str)

    ストリング str の長さをビットで戻します。

    mysql> SELECT BIT_LENGTH('text');
            -> 32
    
  • CHAR(N,... [USING charset_name])

    CHAR() 各引数 N を整数として解釈し、それらの整数のコード値によって与えられた文字を構成するストリングを戻します。NULL 値はとばされます。

    mysql> SELECT CHAR(77,121,83,81,'76');
            -> 'MySQL'
    mysql> SELECT CHAR(77,77.3,'77.3');
            -> 'MMM'
    

    255 より大きい CHAR() 引数は複数結果バイトに変換されます。例えば、CHAR(256) は CHAR(1,0) に等しく、CHAR(256*256) は CHAR(1,0,0) に等しいことになります :

    mysql> SELECT HEX(CHAR(1,0)), HEX(CHAR(256));
    +----------------+----------------+
    | HEX(CHAR(1,0)) | HEX(CHAR(256)) |
    +----------------+----------------+
    | 0100           | 0100           |
    +----------------+----------------+
    mysql> SELECT HEX(CHAR(1,0,0)), HEX(CHAR(256*256));
    +------------------+--------------------+
    | HEX(CHAR(1,0,0)) | HEX(CHAR(256*256)) |
    +------------------+--------------------+
    | 010000           | 010000             |
    +------------------+--------------------+
    

    デフォルトにより、CHAR() はバイナリ ストリングを戻します。与えられた文字セットでストリングを生成するには、オプションの USING 句を使用します :

    mysql> SELECT CHARSET(CHAR(0x65)), CHARSET(CHAR(0x65 USING utf8));
    +---------------------+--------------------------------+
    | CHARSET(CHAR(0x65)) | CHARSET(CHAR(0x65 USING utf8)) |
    +---------------------+--------------------------------+
    | binary              | utf8                           |
    +---------------------+--------------------------------+
    

    USING が与えられ、結果ストリングが与えられた文字セットにとって不当になる場合は、警告が発行されます。また、厳密な SQL モードが有効にされた場合は、CHAR() からの結果は NULL になります。

  • CHAR_LENGTH(str)

    文字で測られたストリング str の長さを戻します。マルチバイト文字は、1 文字として数えられます。つまり、2 バイトの文字を 5 つ含むストリングには、CHAR_LENGTH() は 5 を戻すところを、LENGTH() は 10 を戻します。

  • CHARACTER_LENGTH(str)

    CHARACTER_LENGTH() is a synonym for CHAR_LENGTH().

  • CONCAT(str1,str2,...)

    引数を連結した結果であるストリングを戻します。ひとつ以上の引数を持つ場合があります。すべての引数が非バイナリ ストリングである場合、結果は非バイナリ ストリングになります。引数がひとつでもバイナリ ストリングを含む場合は、結果はバイナリ ストリングになります。数値の引数はそれに等しいバイナリ ストリング形態に変換されます。それを避けたい場合は、次の例のように、明示的なタイプ キャストを使用することができます :

    SELECT CONCAT(CAST(int_col AS CHAR), char_col);
    

    引数のどれかが NULL である場合、CONCAT() は NULL を戻します。

    mysql> SELECT CONCAT('My', 'S', 'QL');
            -> 'MySQL'
    mysql> SELECT CONCAT('My', NULL, 'QL');
            -> NULL
    mysql> SELECT CONCAT(14.3);
            -> '14.3'
    
  • CONCAT_WS(separator,str1,str2,...)

    CONCAT_WS() は Concatenate With Separator ( セパレータと連結 ) を意味しており、CONCAT() の特殊な形態です。最初の引数が、残りの引数のセパレータになります。セパレータは、連結されるストリングの間に追加されます。セパレータは、あとの引数と同じく、ストリングである場合があります。セパレータが NULL の場合は、結果は NULL になります。

    mysql> SELECT CONCAT_WS(',','First name','Second name','Last Name');
            -> 'First name,Second name,Last Name'
    mysql> SELECT CONCAT_WS(',','First name',NULL,'Last Name');
            -> 'First name,Last Name'
    

    CONCAT_WS() は空のストリングをとばしません。しかし、セパレータ引数のあとの NULL 値はすべてとばします。

  • CONV(N,from_base,to_base)

    異なる基数間の数値を変換します。基数 rom_base から基数 to_base に変換された、数値 N の文字列表現を戻します。引数のどれかが NULL である場合は NULL を戻します。引数 N は整数として解釈されますが、整数またはストリングとして特定される場合があります。最小限の基数は 2 で、最大の基数は 36 です。to_base が負数である場合は、N は符号付き数として登録されます。それ以外では、N は符号なしとして扱われます。CONV() は 64 ビット精度で動作します。

    mysql> SELECT CONV('a',16,2);
            -> '1010'
    mysql> SELECT CONV('6E',18,8);
            -> '172'
    mysql> SELECT CONV(-17,10,-18);
            -> '-H'
    mysql> SELECT CONV(10+'10'+'10'+0xa,10,10);
            -> '40'
    
  • ELT(N,str1,str2,str3,...)

    N = 1 の場合は str1 を戻し、N = 2 の場合は str2 を戻す、というふうに続きます。N が 1 以下か、引数の数より大きければ、NULL を戻します。ELT() は FIELD() の補数です。

    mysql> SELECT ELT(1, 'ej', 'Heja', 'hej', 'foo');
            -> 'ej'
    mysql> SELECT ELT(4, 'ej', 'Heja', 'hej', 'foo');
            -> 'foo'
    
  • EXPORT_SET(bits,on,off[,separator[,number_of_bits]])

    値 bits の各ビットセットには on ストリングが返され、各再生ビットには off が返されます。bits のビットは右から左に検査されます ( 下位ビットから上位ビット ) 。ストリングは、separator ストリング ( デフォルトはコンマ ‘,’ ) で区切られた結果の左から右意へ追加されます。検査されたビットの数は number_of_bits によって与えられます ( デフォルトでは 64 ) 。

    mysql> SELECT EXPORT_SET(5,'Y','N',',',4);
            -> 'Y,N,Y,N'
    mysql> SELECT EXPORT_SET(6,'1','0',',',10);
            -> '0,1,1,0,0,0,0,0,0,0'
    
  • FIELD(str,str1,str2,str3,...)

    str1 、str2 、str3 、... リストの str の開始位置 ( ポジション ) を戻します。str が見つからない場合は、0 を戻します。

    FIELD() へのすべての引数がストリングの場合、すべての引数はストリングとして比較されます。すべての引数が数値の場合、それらは数値として比較されます。それ以外は、引数は double として比較されます。

    str が NULL である場合、NULL はいかなる値との比較でも等価にならないため、戻り値は 0 になります。FIELD() は ELT() の補数です。

    mysql> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo');
            -> 2
    mysql> SELECT FIELD('fo', 'Hej', 'ej', 'Heja', 'hej', 'foo');
            -> 0
    
  • FIND_IN_SET(str,strlist)

    ストリング str が N サブストリングで構成されるストリング リスト strlist 内にある場合は、1 から N の範囲の値を戻します。ストリング リストは、‘,’ 文字で区切られたサブストリングで構成されたストリングです。最初の引数が定数列で、2 番目がタイプ SET のカラムの場合、FIND_IN_SET() 関数はビット演算を使用するために最適化されます。str が strlist 内にない場合、または strlist が空のストリングの場合は、0 を戻します。引数のどちらかが NULL である場合は NULL を戻します。この関数は、最初の引数がコンマ ( ‘,’ ) 文字を含む場合は正常に作動しません。

    mysql> SELECT FIND_IN_SET('b','a,b,c,d');
            -> 2
    
  • FORMAT(X,D)

    数字 X を '#,###,###.##' のようにフォーマットし、D 少数位まで丸め、その結果をストリングとして戻します。D が 0 の場合、結果は小数点または小数部を持ちません。

    mysql> SELECT FORMAT(12332.123456, 4);
            -> '12,332.1235'
    mysql> SELECT FORMAT(12332.1,4);
            -> '12,332.1000'
    mysql> SELECT FORMAT(12332.2,0);
            -> '12,332'
    
  • HEX(N_or_S)

    N_or_S が数字の場合、N の 16 進値の文字列表現を戻します。N は longlong ( BIGINT ) 数です。これは、CONV(N,10,16) に等価になります。

    N_or_S がストリングの場合は、N_or_S の各文字が二桁の 16 進数に変換される、N_or_S の 16 進数字列表現を戻します。

    mysql> SELECT HEX(255);
            -> 'FF'
    mysql> SELECT 0x616263;
            -> 'abc'
    mysql> SELECT HEX('abc');
            -> 616263
    
  • INSERT(str,pos,len,newstr)

    ストリング str を、位置 pos で始まるサブストリングと、ストリング newstr に置換された len 文字長と共に戻します。pos がストリングの長さに収まらない場合は、元のストリングを返します。len が残りのストリングの長さに収まらない場合は、位置 pos からの残りのストリングを置換します。引数のどれかが NULL である場合は NULL を戻します。

    mysql> SELECT INSERT('Quadratic', 3, 4, 'What');
            -> 'QuWhattic'
    mysql> SELECT INSERT('Quadratic', -1, 4, 'What');
            -> 'Quadratic'
    mysql> SELECT INSERT('Quadratic', 3, 100, 'What');
            -> 'QuWhat'
    

    この関数はマルチバイトでも安全です。

  • INSTR(str,substr)

    ストリング str 内のサブストリング substr の最初の発生の位置を戻します。これは、LOCATE() の引数がふたつのフォームの、引数の順番が逆になったものとと同じですが、

    mysql> SELECT INSTR('foobarbar', 'bar');
            -> 4
    mysql> SELECT INSTR('xbar', 'foobar');
            -> 0
    

    この関数はマルチバイトでも安全で、少なくともひとつの引数がバイナリ ストリングである場合は、大文字小文字の区別が必須です。

  • LCASE(str)

    LCASE() is a synonym for LOWER().

  • LEFT(str,len)

    ストリング str からの左側の len 文字を戻し、引数が NULL である場合は NULL を戻します。

    mysql> SELECT LEFT('foobarbar', 5);
            -> 'fooba'
    
  • LENGTH(str)

    バイトで測られたストリング str の長さを戻します。マルチバイト文字は、複数バイトとして数えられます。つまり、2 バイトの文字を 5 つ含むストリングには、CHAR_LENGTH() は 5 を戻すところを、LENGTH() は 10 を戻します。

    mysql> SELECT LENGTH('text');
            -> 4
    
  • LOAD_FILE(file_name)

    ファイルを読み取り、その内容をストリングとして戻します。この関数を使用するには、ファイルがサーバホストに置かれていなければならないのと、ファイルへのフルパス名を特定し、FILE 権限を持つ必要があります。ファイルはあらゆる点で読取可能でなければならず、max_allowed_packet バイトより小さなサイズである必要があります。

    ファイルが存在しない場合、または、上記の条件が満たされておらず、読取が不可能な場合、この関数は NULL を戻します。

    MySQL 5.1.6 からは、character_set_filesystem システム環境変数が、リテラル ストリングとして与えられたファイル名の解釈をコントロールします。

    mysql> UPDATE t
                SET blob_col=LOAD_FILE('/tmp/picture')
                WHERE id=1;
    
  • LOCATE(substr,str), LOCATE(substr,str,pos)

    最初の構文は、ストリング str 内のサブストリング substr の最初の発生の位置を戻します。2 番目の構文は、位置 pos で始まるストリング str 内のサブストリング substr の最初の発生の位置を戻します。str 内に substr がない場合は 0 を戻します。

    mysql> SELECT LOCATE('bar', 'foobarbar');
            -> 4
    mysql> SELECT LOCATE('xbar', 'foobar');
            -> 0
    mysql> SELECT LOCATE('bar', 'foobarbar', 5);
            -> 7
    

    この関数はマルチバイトでも安全で、少なくともひとつの引数がバイナリ ストリングである場合は、大文字小文字の区別が必須です。

  • LOWER(str)

    現在の文字セットのマッピングに基づいてすべての文字が小文字に変更されたストリング str を戻します。デフォルトは latin1 ( cp1252 West European ) です。

    mysql> SELECT LOWER('QUADRATICALLY');
            -> 'quadratically'
    

    この関数はマルチバイトでも安全です。

  • LPAD(str,len,padstr)

    len 文字の長さへ、ストリング padstr で左にパッドされたストリング str を戻します。str が len より長い場合は、戻り値は len 文字に縮められます。

    mysql> SELECT LPAD('hi',4,'??');
            -> '??hi'
    mysql> SELECT LPAD('hi',1,'??');
            -> 'h'
    
  • LTRIM(str)

    頭のスペース文字を除いたストリング str を戻します。

    mysql> SELECT LTRIM('  barbar');
            -> 'barbar'
    

    この関数はマルチバイトでも安全です。

  • MAKE_SET(bits,str1,str2,...)

    bits セット内の対応するビットを持つストリングで構成されるセット値 ( ‘,’ 文字によって区切られたサブストリングを含む ) を戻します。str1 はビット 0 に対応し、str2 はビット 1 に対応する、というようになります。str1 、str2 、... 内の NULL 値は結果に追加されません。

    mysql> SELECT MAKE_SET(1,'a','b','c');
            -> 'a'
    mysql> SELECT MAKE_SET(1 | 4,'hello','nice','world');
            -> 'hello,world'
    mysql> SELECT MAKE_SET(1 | 4,'hello','nice',NULL,'world');
            -> 'hello'
    mysql> SELECT MAKE_SET(0,'a','b','c');
            -> ''
    
  • MID(str,pos,len)

    MID(str,pos,len) は、SUBSTRING(str,pos,len) のシノニムです。

  • OCT(N)

    N の 8 進数の文字列表現を戻します。N は longlong ( BIGINT ) 数字です。これは、CONV(N,100.8) に等価になります。N が NULL である場合は NULL を戻します。

    mysql> SELECT OCT(12);
            -> '14'
    
  • OCTET_LENGTH(str)

    OCTET_LENGTH() は LENGTH() のシノニムです。

  • ORD(str)

    ストリング str の左端の文字がマルチバイト文字の場合は、次の公式を使ってその構成バイトの数値から計算された、その文字のコードを戻します :

      (1st byte code)
    + (2nd byte code × 256)
    + (3rd byte code × 2562) ...
    

    左端の文字がマルチバイト文字でない場合は、ORD() は ASCII() 関数と同じ値を戻します。

    mysql> SELECT ORD('2');
            -> 50
    
  • POSITION(substr IN str)

    POSITION(substr IN str) は LOCATE(substr,str) のシノニムです。

  • QUOTE(str)

    SQL 文で、適切にエスケープされたデータ値として使用できる結果を生成するストリングを引用します。ストリングは単一引用符で囲まれ、単一引用符 ( ‘'’ ) 、バックスラッシュ ( ‘\’ ) 、ASCII NUL 、そして バックスラッシュによって先行された Control-Z の各インスタンスと共に戻されます。引数が NULL の場合は、戻り値は単一引用符の囲みなしの語句 「NULL」 になります。

    mysql> SELECT QUOTE('Don\'t!');
            -> 'Don\'t!'
    mysql> SELECT QUOTE(NULL);
            -> NULL
    
  • REPEAT(str,count)

    count 回繰り返されたストリング str で構成されるストリングを戻します。count が 1 より小さい場合は、空のストリングを戻します。str もしくは count が NULL である場合は NULL を戻します。

    mysql> SELECT REPEAT('MySQL', 3);
            -> 'MySQLMySQLMySQL'
    
  • REPLACE(str,from_str,to_str)

    ストリング to_str によって置換されたストリング from_str のすべての発生と共に、ストリング str を戻します。REPLACE() は、from_str を検索する際、大文字小文字を区別した検出を行います。

    mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');
            -> 'WwWwWw.mysql.com'
    

    この関数はマルチバイトでも安全です。

  • REVERSE(str)

    文字の順序が逆になったストリング str を戻します。

    mysql> SELECT REVERSE('abc');
            -> 'cba'
    

    この関数はマルチバイトでも安全です。

  • RIGHT(str,len)

    ストリング str からの右側の len 文字を戻し、引数が NULL である場合は NULL を戻します。

    mysql> SELECT RIGHT('foobarbar', 4);
            -> 'rbar'
    

    この関数はマルチバイトでも安全です。

  • RPAD(str,len,padstr)

    len 文字の長さへ、ストリング padstr で右にパッドされたストリング str を戻します。str が len より長い場合は、戻り値は len 文字に縮められます。

    mysql> SELECT RPAD('hi',5,'?');
            -> 'hi???'
    mysql> SELECT RPAD('hi',1,'?');
            -> 'h'
    

    この関数はマルチバイトでも安全です。

  • RTRIM(str)

    最後のスペース文字を除いたストリング str を戻します。

    mysql> SELECT RTRIM('barbar   ');
            -> 'barbar'
    

    この関数はマルチバイトでも安全です。

  • SOUNDEX(str)

    str から soundex ストリングを戻します。サウンドがほぼ同じなふたつのストリングは、同等の soundex ストリングを持っています。標準の soundex ストリングは長さ 4 文字ですが、SOUNDEX() 関数は任意の長さのストリングを戻します。標準の soundex ストリングを得るには、結果に SUBSTRING() を使用することができます。str 内のすべての非アルファベット文字は無視されます。A から Z 以外のすべての国際アルファベット文字は、母音として扱われます。

    重要点 : SOUNDEX() を使用する場合は、次の制限に留意してください :

    • 現在実装されているこの関数は、英語言語のみとの作動が意図されています。多言語でのストリングは、正確な結果を生成できない場合があります。

    • この関数は、utf-8 を含むマルチバイト文字セットを使用するストリングでは、一貫性のある結果を提供する保証はありません。

      今後のリリースでは、これらの制限をなくせるよう努力しています。詳細は Bug#22638 をご覧ください。

    mysql> SELECT SOUNDEX('Hello');
            -> 'H400'
    mysql> SELECT SOUNDEX('Quadratically');
            -> 'Q36324'
    

    注記 :この関数は、もっと一般的な拡張版ではなく、元来の Soundex アルゴリズムを実装しています。その相違点としては、元来のバージョンは最初に母音を破棄してから、複製を捨てますが、拡張版ではまず複製を破棄し、それから母音を捨てます。

  • expr1 SOUNDS LIKE expr2

    これは、SOUNDEX(expr1) = SOUNDEX(expr2) と同様です。

  • SPACE(N)

    N スペース文字で構成されるストリングを戻します。

    mysql> SELECT SPACE(6);
            -> '      '
    
  • SUBSTRING(str,pos), SUBSTRING(str FROM pos), SUBSTRING(str,pos,len), SUBSTRING(str FROM pos FOR len)

    len 引数なしのフォームは、位置 pos ではじまる、ストリング str からのサブストリングを返します。len 引数を持つフォームは、位置 pos ではじまる、ストリング str からのサブストリング len 文字長を返します。FROM を使用するフォームは標準の SQL 構文です。また、pos にマイナス値を使用することも可能です。その場合、サブクエリの頭は、ストリングの最初でなく、ストリングの最後からの pos 文字です。マイナス値は、この関数のあらゆるフォームで、pos に使用することもできます。

    mysql> SELECT SUBSTRING('Quadratically',5);
            -> 'ratically'
    mysql> SELECT SUBSTRING('foobarbar' FROM 4);
            -> 'barbar'
    mysql> SELECT SUBSTRING('Quadratically',5,6);
            -> 'ratica'        
    mysql> SELECT SUBSTRING('Sakila', -3);
            -> 'ila'        
    mysql> SELECT SUBSTRING('Sakila', -5, 3);
            -> 'aki'
    mysql> SELECT SUBSTRING('Sakila' FROM -4 FOR 2);
            -> 'ki'
    

    この関数はマルチバイトでも安全です。

    len が 1 以下の場合、結果は空のストリングになります。

    SUBSTR() は SUBSTRING() のシノニムです。

  • SUBSTRING_INDEX(str,delim,count)

    デリミッタ delim の count 発生前に、ストリング str を戻します。count がプラスの場合、最後のデリミッタ ( 左から数えて ) の左側のすべてを戻します。count がマイナスの場合、最後のデリミッタ ( 右から数えて ) の右側のすべてを戻します。SUBSTRING_INDEX() は、delim を検索する際、大文字小文字を区別した検出を行います。

    mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
            -> 'www.mysql'
    mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
            -> 'mysql.com'
    

    この関数はマルチバイトでも安全です。

  • TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str), TRIM([remstr FROM] str)

    すべての remstr プレフィックスまたはサフィックスを除いたストリング str を戻します。拡張子 BOTH 、LEADING 、または TRAILING のうちいずれも与えられていない場合は、BOTH が仮定されます。remstr はオプションで、指定されていない限り、スペースは除かれます。

    mysql> SELECT TRIM('  bar   ');
            -> 'bar'
    mysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');
            -> 'barxxx'
    mysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');
            -> 'bar'
    mysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');
            -> 'barx'
    

    この関数はマルチバイトでも安全です。

  • UCASE(str)

    UCASE() は UPPER() のシノニムです。

  • UNHEX(str)

    HEX(str) の逆演算を行います。引数内の 16 進数のそれぞれのペアを数字として解釈し、それを数字で表される文字に変換します。結果としての文字はバイナリ ストリングとして戻されます。

    mysql> SELECT UNHEX('4D7953514C');
            -> 'MySQL'
    mysql> SELECT 0x4D7953514C;
            -> 'MySQL'
    mysql> SELECT UNHEX(HEX('string'));
            -> 'string'
    mysql> SELECT HEX(UNHEX('1267'));
            -> '1267'
    

    引数ストリング内の文字は、正当な 16 進数である必要があります : '0' .. '9', 'A' .. 'F', 'a' .. 'f'. UNHEX() が引数内で非 16 進数に遭遇する場合は NULL を戻します :

    mysql> SELECT UNHEX('GG');
    +-------------+
    | UNHEX('GG') |
    +-------------+
    | NULL        | 
    +-------------+
    

    NULL という結果は、UNHEX() への引数が BINARY カラムである場合、値が保存される時に 0x00 バイトでパッドされるために起こりますが、これらのバイトは検索でストリップされません。例えば、'aa' は 'aa ' として CHAR(3) カラムに保存され、'aa' ( トレーリング パッド スペースがストリップされた状態 ) として検索されます。それにより、カラム値の UNHEX() は A' を戻します。それに対し、'aa' は BINARY(3) カラムに 'aa\0' として保存され、'aa\0' ( トレーリング パッド 0x00 バイトがストリップされていない常態で ) として検索されます。'\0' は正当な 16 進数ではないので、カラム値の UNHEX() は NULL を戻します。

  • UPPER(str)

    現在の文字セットのマッピングに基づいてすべての文字が大文字に変更されたストリング str を戻します。デフォルトは latin1 ( cp1252 West European ) です。

    mysql> SELECT UPPER('Hej');
            -> 'HEJ'
    

    この関数はマルチバイトでも安全です。

Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved. Legal Notices
Top / Previous / Next / Up / Table of Contents
© 2010, Oracle Corporation and/or its affiliates