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

Oracleのvarchar値に含まれる文字の出現回数をカウントするにはどうすればよいですか?

    どうぞ:

    select length('123-345-566') - length(replace('123-345-566','-',null)) 
    from dual;
    

    技術的には、チェックする文字列にカウントする文字のみが含まれている場合、上記のクエリはNULLを返します。次のクエリは、すべての場合に正しい答えを与えます:

    select coalesce(length('123-345-566') - length(replace('123-345-566','-',null)), length('123-345-566'), 0) 
    from dual;
    

    coalesceの最後の0 空の文字列でカウントしている場合をキャッチします(つまり、ORACLEではlength(NULL)=NULLであるため、NULL)。



    1. 同じマシン上に複数のPostgresインスタンスを作成する

    2. MySQLの外部キーの基本?

    3. MySQLのランク関数

    4. MicrosoftAccessのレポートにヘッダーとフッターを追加する方法