0
다른 테이블의 데이터로 deletiondate
테이블 열을 업데이트하려고했지만 "누락 된 표현식"오류가 발생합니다. 다른 사람이이 문제를 해결하도록 도와 줄 수 있습니까?누락 된 표현식을 사용하여 select 및 group을 사용하여 문 업데이트
기본적으로 테이블에서 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'이란 무엇입니까? –