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

OracleのTO_NUMBER関数で奇妙な問題が発生する

    これは良い習慣ではありません。数値データはNUMBER列に保持する必要があります。理由は単純です。強力なデータ型を適用しないと、varchar2列に数値以外のデータが含まれている可能性があります。それが起こった場合は、このようなフィルター

    where to_number(field1) = 23 
    

    ORA-01722: invalid numberで失敗します 。

    IDのフィルターの明らかに重要でない変更がクエリの成功を変更した理由がわからないため、これがシナリオで起こっていることであるとは断言できません。さまざまなバージョンのクエリの実行プランを確認することは有益です。ただし、SGAのバグよりも、データの問題である可能性が高いと思います。



    1. PostgreSQL-JSONB配列の各オブジェクトにキーを追加します

    2. コードカバレッジ統計

    3. Postgresql、ケースごとに更新または挿入

    4. Oracleの列にシーケンスがあるかどうかを確認します