【发布时间】:2022-01-23 03:31:54
【问题描述】:
我有一个表,我想在其中更新列 external_uuid,前提是该列已经没有值:
private const val updateSql = """
update customer
set
external_id = :externalId,
external_uuid = CASE when external_uuid is null then external_uuid = :externalUuid END,
name = :name,
address = :address,
zip_code = :zipCode,
zip_area = :zipArea,
country_code = :countryCode,
is_deleted = :markedForRemoval
where is_deleted = false AND (external_uuid = :externalUuid OR (external_id = :externalId AND external_subcustomer = :subCustomer))
"""
但是,如果我进行这样的更新,我会收到错误:
ERROR: column "external_uuid" is of type uuid but expression is of type boolean
如何在更新时有条件地仅设置一列?
【问题讨论】:
标签: sql postgresql sql-update case coalesce