วันอังคารที่ 12 กุมภาพันธ์ พ.ศ. 2556

อยาก update ข้อมูล จาก field 1 ไป 2 โดยใช้ coalesce (MSSQL)

อยาก  UPDATE ข้อมูล จาก FIELD1  ไป 2 โดยที่ตรวจสอบข้อมูลก่อนว่า
FIELD1  มีข้อมูลหรือไม่ ถ้าเป็นค่าว่าง ให้ คง ค่า field2 ไว้

วิธีการง่ายมากครับ โดยใช้  COALESCE (ขอบคุณพี่อิม ^^)

BEGIN   
    UPDATE TABLE

    SET FIELD2=COALESCE(@FIELD1, @FIELD2),

    WHERE FIELD2 IS NOT NULL
END
 อันนี้คือ ผมใช้งาน จริง ในขั้นตอน MERGE  ข้อมูล ของ 2  FIELD

BEGIN   
    UPDATE CRM_MAIN
    SET PID=COALESCE(@CRMIDTO, @CRMIDFrom),
     
   
    WHERE PID IS NOT NULL  and PID =@CRMIDFrom   

END

ไม่มีความคิดเห็น: