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

MySQLでのSUBSTR()関数のしくみ

    MySQLでは、SUBSTR() 関数は、指定された位置から始まる部分文字列を返します。

    両方のSUBSTR() およびMID() SUBSTRING()の同義語です 。

    構文

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

    SUBSTR(str,pos,len)

    ここでは、str 文字列、pos 部分文字列を開始する位置であり、len は、その開始位置から戻る文字数を決定するオプションの引数です。

    この関数の使用方法にはいくつかのバリエーションがあるため、構文の全範囲は次のようになります。

    SUBSTR(str,pos)
    SUBSTR(str FROM pos)
    SUBSTR(str,pos,len)
    SUBSTR(str FROM pos FOR len)
    

    これらは、次の例で示されています。

    例1-基本的な使用法

    これがSUBSTR(str,pos)の例です 構文:

    SELECT SUBSTR('I play the drums', 3) Result;

    結果:

    +----------------+
    | Result         |
    +----------------+
    | play the drums |
    +----------------+

    この例では、位置3から始まる文字列から部分文字列を取得します。

    例2–FROM句の使用

    同じことを行う方法は次のとおりですが、今回はSUBSTR(str FROM pos)を使用します 構文:

    SELECT SUBSTR('I play the drums' FROM 3) Result;

    結果:

    +----------------+
    | Result         |
    +----------------+
    | play the drums |
    +----------------+

    したがって、同じ結果が得られます。

    この場合、FROM 標準SQLです。この構文ではコンマを使用しないことに注意してください。

    例3–長さを指定する

    この例では、SUBSTR(str,pos,len)を使用します 構文:

    SELECT SUBSTR('I play the drums', 3, 4) Result;

    結果:

    +--------+
    | Result |
    +--------+
    | play   |
    +--------+

    ここでは、返される部分文字列の長さが4文字であることを指定します。

    例4–長さを指定する(FOR句を使用)

    この例では、SUBSTR(str FROM pos FOR len)を使用します 構文:

    SELECT SUBSTR('I play the drums' FROM 3 FOR 5) Result;

    結果:

    +--------+
    | Result |
    +--------+
    | play   |
    +--------+

    そのため、今回は標準SQLを使用して同じ結果を達成しました


    1. 除算(/)がpostgresqlで私の答えを与えていない

    2. MySQLテーブルからの一意性制約の削除

    3. MariaDBでのTO_BASE64()のしくみ

    4. MSSQLServerで予約語/キーワードであるテーブル名を作成する