Trên thực tế, bạn có thể truyền NULL
thành int, bạn chỉ không thể truyền một chuỗi rỗng thành int. Giả sử bạn muốn NULL trong cột mới nếu data1
chứa một chuỗi rỗng hoặc NULL, bạn có thể làm như sau:
UPDATE table SET data2 = cast(nullif(data1, '') AS int);
Nếu bạn muốn một số logic khác, bạn có thể sử dụng ví dụ (chuỗi trống chuyển đổi thành -1):
UPDATE table SET data2 = CASE WHEN data1 = '' THEN -1 ELSE cast(data1 AS int) END;