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

SQL Serverエラー照合の競合が原因で値の照合が解決されないため、の暗黙的な変換。

    ほとんどの場合、両方の場所でCOLLATEが必要です。

    Select City COLLATE DATABASE_DEFAULT AS Place, State, Country FROM DEPT1
    UNION ALL
    Select '' COLLATE DATABASE_DEFAULT AS Place, 'Arizona' As State, Country FROM DEPT2
    

    編集:1つの場所で取得する場合は、すべての文字列で必要になる場合があります

    Select
        City COLLATE DATABASE_DEFAULT AS Place,
        State COLLATE DATABASE_DEFAULT AS State,
        Country COLLATE DATABASE_DEFAULT AS Country
    FROM DEPT1
    UNION ALL
    Select
        '' COLLATE DATABASE_DEFAULT,
        'Arizona' COLLATE DATABASE_DEFAULT ,
        Country COLLATE DATABASE_DEFAULT
    FROM DEPT2
    

    Edit2:

    これは、列の照合がデータベースの照合とはおそらく異なるために発生します。したがって、「City」には1つの照合がありますが、文字列定数には別の照合があります。



    1. JavaからOracle関数を呼び出す

    2. PostgreSQLパーティションシーケンスを作成するにはどうすればよいですか?

    3. SQLで大量のデータを効率的に挿入

    4. Pythonパンダ-to_sqlを使用して大きなデータフレームをチャンクに書き込む