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

postgreSQLでNULLをJSONのnullに変換できないのはなぜですか?

    to_json STRICTとしてマークされています 関数、それは意味です-いずれかのパラメータがNULLの場合はNULLを返します。正しい実装かどうかはわかりませんが、PostgreSQLのバグである可能性があります。

    更新:Postgresのメーリングリストで議論した後、これはバグではありませんが、機能です-状況は事実上単純ではないため、両方の言語がNULLをサポートしていますが、NULLの動作はこれらの言語とは少し異なります。 SQLNULLをすぐにJSONNULLに変換し、SQLの動作をすぐに失う必要があるかどうかを判断するのは困難です。別の動作が必要な場合は、SQL関数を使用できます:

    CREATE OR REPLACE FUNCTION to_json2(anyelement)
    RETURNS json AS $$
    SELECT COALESCE(to_json($1), json 'null')
    $$ LANGUAGE sql;
    


    1. エラーjava.sql.SQLException:ORA-00911:無効な文字

    2. MysqlからPigにテーブルデータを読み取る方法

    3. MySQL-各「グループ」から2行のみを選択します

    4. 未定義のインデックス名