PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Cách truyền từ văn bản sang int nếu cột chứa cả giá trị int và NULL trong PostgreSQL

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;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PG ::SyntaxError cho ứng dụng rails

  2. JavaScript (Postgres DB) - Cách sử dụng một câu lệnh đã chuẩn bị sẵn với một mảng làm tham số trong mệnh đề WHERE IN ()

  3. Knex.js buộc sử dụng lại phiên cho 4 truy vấn sau

  4. Flask-Migrate không phát hiện bảng

  5. Trong Rails, Không thể tạo cơ sở dữ liệu cho {adapter => postgresql,