0
我試圖用另一個表中的數據更新表列deletiondate
但我得到「缺少表達式」的錯誤。有人可以幫我解決這個問題嗎?更新語句使用選擇和組丟失的表達式
基本上我想更新deletiondate
列中的一個表,方法是將關鍵字段與另一個表連接起來並進行分組。如果日期爲01-JAN-0001
且記錄數大於1,則需要更新01-JAN-0001
否則我需要更新最大刪除日期值。
UPDATE語句我用:
update table1 db1 set deletiondate =
SELECT
CASE WHEN count(*)>1 and (
(select 1
from table2 b
where b.loginid = a.loginid
and a.creationdate = b.creationdate
and b.deletiondate = '01-JAN-0001'
) = 1) THEN '01-JAN-0001' ELSE to_char(MAX(deletiondate),'DD-MON-YYYY') END as deletiondate1
FROM table2 a
GROUP BY a.loginid, a.creationdate
WHERE db1.userloginid = a.loginid and db1.usercreationdate = a.creationdate
在該SQL中沒有GROUP BY,是否如預期那樣? –
@JirkaHanika - 由於格式不正確,「GROUP BY」被隱藏在代碼中。 – Tony
'to_char'是什麼? –