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

OracleのCHR()関数

    Oracleでは、CHR() 関数は、引数として指定されたコード値に基づいて文字を返します。

    具体的には、引数に相当するバイナリを持つ文字をVARCHAR2として返します。 データベース文字セットの値、またはUSINGを指定した場合は NCHAR_CS 、国別文字セット。

    構文

    構文は次のようになります:

    CHR(n [ USING NCHAR_CS ])

    ここでn NUMBERです 値、または暗黙的にNUMBERに変換できる任意の値 。

    USING NCHAR_CS 引数は、国別文字セットを指定できるオプションの引数です。

    簡単な例を次に示します。

    SELECT CHR(65)
    FROM DUAL;

    結果:

       CHR(65) 
    __________ 
    A         

    ここで番号とCHR()を入力しました 対応する文字を返しました。この場合、整数65 大文字のAにマップします 。

    大文字と小文字の区別

    大文字と小文字を区別する例を次に示します。

    SELECT 
        CHR(72),
        CHR(104)
    FROM DUAL;

    結果:

       CHR(72)    CHR(104) 
    __________ ___________ 
    H          h           

    複数文字の文字列を返す

    複数文字の文字列を生成するために、複数のCHR()を連結できます。 機能:

    例:

    SELECT CHR(65) || CHR(77)
    FROM DUAL;

    結果:

       CHR(65)||CHR(77) 
    ___________________ 
    AM                  

    NCHAR_CS 引数

    (オプションの)2番目の引数を渡す例を次に示します。

    SELECT CHR (257 USING NCHAR_CS)
    FROM DUAL;

    結果:

       CHR(257USINGNCHAR_CS) 
    ________________________ 
    ā                       

    これは、NCHR()を使用するのと同じです。 機能。

    ヌル値

    nullを渡す nullを返します :

    SET NULL 'null';
    
    SELECT CHR(null)
    FROM DUAL;

    結果:

       CHR(NULL) 
    ____________ 
    null        

    デフォルトでは、SQLclおよびSQL * Plusは、nullの場合は常に空白を返します。 SQL SELECTの結果として発生します 声明。

    ただし、SET NULLは使用できます 返される別の文字列を指定します。ここでは、文字列nullを指定しました 返却する必要があります。

    引数の数が正しくありません

    CHR()の呼び出し 引数を渡さないとエラーが返されます:

    SELECT CHR()
    FROM DUAL;

    結果:

    Error starting at line : 1 in command -
    SELECT CHR()
    FROM DUAL
    Error at Command Line : 1 Column : 8
    Error report -
    SQL Error: ORA-00938: not enough arguments for function
    00938. 00000 -  "not enough arguments for function"
    *Cause:    
    *Action:

    また、間違った数の引数を渡すと、エラーが発生します:

    SELECT CHR(1, 2, 3)
    FROM DUAL;

    結果:

    Error starting at line : 1 in command -
    SELECT CHR(1, 2, 3)
    FROM DUAL
    Error at Command Line : 1 Column : 8
    Error report -
    SQL Error: ORA-00909: invalid number of arguments
    00909. 00000 -  "invalid number of arguments"
    *Cause:    
    *Action:

    1. SQL Server(T-SQL)ですべての言語のリストを取得する方法

    2. MySQLで過去10分間のレコードを取得する方法

    3. MySQL –リストからインデックス位置を抽出するELT()およびFILED()関数

    4. dd-mm-yyyy形式のsqlitedbから2つの日付の間のデータを選択するにはどうすればよいですか?