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

Oracle SQLで特定の文字までの部分文字列を選択するにはどうすればよいですか?

    SUBSTR、INSTR、およびNVL(アンダースコアのない文字列の場合)を組み合わせて使用​​すると、必要なものが返されます。

    SELECT NVL(SUBSTR('ABC_blah', 0, INSTR('ABC_blah', '_')-1), 'ABC_blah') AS output
      FROM DUAL
    

    結果:

    output
    ------
    ABC
    

    使用:

    SELECT NVL(SUBSTR(t.column, 0, INSTR(t.column, '_')-1), t.column) AS output
      FROM YOUR_TABLE t
    

    参照:

    • SUBSTR
    • INSTR

    補遺

    Oracle10g +を使用している場合は、REGEXP_SUBSTRを介して正規表現を使用できます。



    1. SQLServerテーブルを別のファイルグループに移動する

    2. CREATE OR REPLACEを使用するにはどうすればよいですか?

    3. SQLServerのScalarUDFとは何ですか?

    4. Pythonpsycopg2がpostgresqlテーブルに挿入されていません