我正在执行从临时表t
到主表的 MERGE 语句ts
,匹配 ID 字段。它包含以下内容:
WHEN MATCHED THEN UPDATE
SET ts.username = t.username, ts.password = t.password, ts.title = t.title, ts.firstname = t.firstname, ts.surname = t.surname, ts.email = t.email
如果临时表中的用户名和密码为空t
,我不想更新主表ts
。我怎样才能做到这一点?
编辑:似乎CASE
声明或使用COALESCE(NULLIF(t.username, ''), ts.username)
会起作用。哪个最好?