SQLテーブルの値をユーザーが検索しようとしていて、その値を含む行がユーザーに返されます。現時点では、私はそれがコードがあるように動作させることができます。PostgreSQL:変数のような任意の列の値を返します
SELECT * FROM table WHERE lower('foo') in (lower('col1'),lower('col2'),etc)
しかし、私はすべての列を検索すると「foo」でLIKE任意の行を返すことができるようにしたいと思います。たとえば、
SELECT * FROM table WHERE (lower('col1'), lower('col2'), etc) like lower('%foo%')
しかし、これは機能しません。
提案がありますか?
引用符を使わないで 'lower(col1)... lower(coln)'を使うべきでしょう。そうでなければ、リテラルテキストだけをリテラルテキスト比較にします。 – joanolo
@joanoloありがとうございました。もちろん、これらは実際の列のプレースホルダ名であると確信しています。 –