私はpostgresで大文字と小文字を区別する検索の問題に遭遇し、すべてのWHEREテストの両側でLOWERを使用して対処し始めました。Postgresの大文字と小文字の区別:Lower()の意味
これまでのところとても良いです。しかし、私はインデックスを利用するためには、LOWERも使用して作成する必要があることを理解しています。
ただし、PKの内容は何ですか?おそらくこれらは有効ではないでしょう。なぜなら、選択されたPKフィールドに関数を使用してPKを作成することはできないように思われるからです。これは、PKで行われているフィルタリングや結合の問題ではありませんか?
これを回避する方法はありますか?
実際にPKとして文字列が必要ですか? workaraoundはサロゲートPKとしてのシリアルです(文字列の一意の制約かもしれません) – joop
現在のモデルがいくつかの製品で使用されているレガシーデータベースです。大幅な変更を行うと、最小限に抑えることを望む回帰テストの量が不均衡になります。ありがとう。 – Hughgo