select date_format(attend_dt, '%Y-%m-%d') as attend_dt
from tb_int_attendlist_spc
/////
UPDATE tb_int_attendlist_spc set
fixed_id = CASE WHEN '${strCheck(cond.fixed_id)}' = '' THEN NULL ELSE '${strCheck(cond.fixed_id)}' END
where attend_dt = '${strCheck(cond.attend_dt)}'
and emp_no = '${strCheck(cond.emp_no)}'
맨 위 select문에서 변경된 모양의 attend_dt를 아래 update에서 attend_dt를 update하기 전에 올바르게 넣어주고 싶은데, 혹시 어떻게 하는지 아시는 분 있나요?
위의 select 문에서 attend_dt는 2022-02-01인데, 아래에서는 20220201이라서 update문이 실행이 되지 않아서 여쭤봅니다...
정확한 목적을 모르겠습니다.
attend_dt 값을 변경하고 싶은신건지
WHERE 조건에 안맞으니까 변경하고 싶은신건지
답변 감사합니다!!
where 조건에 안 맞는 것 때문입니다
MYSQL은 잘모르지만..
where attend_dt = STR_TO_DATE('${strCheck(cond.attend_dt)}','%Y%m%d')
이런식으로 변수쪽을 datatime 으로 변환시키면 될거같습니다.
attend_dt 를 변형하여 변수에 담은 뒤
attend_dt 의 원본값과 변형된 값을 비교하네요.
애초에 변형을 하지 않고 원본 그대로 이용하면 되지 않나요?