티스토리 뷰

반응형

regist_day 값에 아래의 date 속성을 가진 날짜 중에 제일 오래된 날짜 현재날짜에서 가장 멀리 떨어진 날짜가 regist_day의 날짜가 되게 sql 코드 만들려면, 어떻게 해야 할까요?

아래의 날짜를 비교해서 가장 오래된 것?


workday, cableday, asendday, asday, endworkday, setdate, condate, condate1, billdate1

UPDATE `work`
SET `regist_day` = (
    SELECT CASE
        WHEN `workday` IS NOT NULL AND `workday` != '0000-00-00' THEN `workday`
        WHEN `cableday` IS NOT NULL AND `cableday` != '0000-00-00' THEN `cableday`
        WHEN `asendday` IS NOT NULL AND `asendday` != '0000-00-00' THEN `asendday`
        WHEN `asday` IS NOT NULL AND `asday` != '0000-00-00' THEN `asday`
        WHEN `endworkday` IS NOT NULL AND `endworkday` != '0000-00-00' THEN `endworkday`
        WHEN `setdate` IS NOT NULL AND `setdate` != '0000-00-00' THEN `setdate`
        WHEN `condate` IS NOT NULL AND `condate` != '0000-00-00' THEN `condate`
     WHEN `condate1` IS NOT NULL AND `condate1` != '0000-00-00' THEN `condate1`
        WHEN `billdate1` IS NOT NULL AND `billdate1` != '0000-00-00' THEN `billdate1`
        ELSE NULL
    END
)
WHERE 
`workday` IS NOT NULL OR `cableday` IS NOT NULL OR `asendday` IS NOT NULL OR 
`asday` IS NOT NULL OR `endworkday` IS NOT NULL OR `setdate` IS NOT NULL OR 
`condate` IS NOT NULL OR `billdate1` IS NOT NULL;

 

위와 같이 실행하면 위에서 원하는 형태의 데이터가 나오네요~

해결완료~

 

반응형
댓글