必要な条件を備えたスクリプトを作成しました。そして、それは適切に機能します。しかし、このスクリプトを多くの行に適用する必要があります。id がどこにあるかだけではありません15
。
UPDATE my_table SET my_field =
(SELECT
CASE WHEN position('a' in my_field) = 0 THEN my_field
WHEN position('a' in my_field) = 1 THEN substring(my_field from 1 for 5)
WHEN position('a' in my_field) > 1 THEN substring(my_field from 2 for 5)
END
FROM my_table WHERE id = 15)
WHERE id = 15
特定の条件が実行される行にこのスクリプトを適用したいと思います。たとえば、私は書きたいと思いますWHERE my_field LIKE '%ab%'
。しかし問題は、 subselect があることです。したがって、別のスクリプトを適用して必要なすべての ID を取得し、このスクリプトを手動で適用して、別のスクリプトから個々の ID を置き換えることができます。しかし、単一のクエリで自動的に適用したいと考えています。