次のようなクエリがあります。
SELECT (column LIKE 'string')+100
ERROR: operator does not exist: boolean + integer を返します
bool を int に変換する関数が見つかりませんでした。テキストから int への to_number() しかありません。
この問題を解決する方法はありますか?
次のようなクエリがあります。
SELECT (column LIKE 'string')+100
ERROR: operator does not exist: boolean + integer を返します
bool を int に変換する関数が見つかりませんでした。テキストから int への to_number() しかありません。
この問題を解決する方法はありますか?
SELECT (column LIKE 'string')::integer +100
文字列比較を true の場合は 1 に変換し、false の場合は 0 に変換する場合は、case ステートメントを使用できます。
select case when column like '%foo%' then 1 else 0 end as my_int from my_table;
その結果に追加したい場合は、次のようにします。
select (case when column like '%foo%' then 1 else 0 end) + 100 as my_int from my_table;
よりポータブルなソリューションが必要だったので、これが私に最適です:
SELECT CAST((column LIKE 'string') AS integer)+100