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

Làm thế nào để đạt được giá trị mặc định nếu giá trị cột là NULL?

Nếu bạn viết cái này:

SELECT
    COALESCE(OVER_BID_PRICE, -1)
FROM
    AUCTION_CAR_BID
WHERE
    BID_SEQ = 2354435345;

Kết quả có thể có hai loại.

Kết quả đầu tiên:Truy vấn của bạn không trả về hàng! Điều kiện WHERE của bạn không đạt yêu cầu nên bạn sẽ đọc NULL

Kết quả thứ hai:Truy vấn của bạn trả về các hàng nhưng giá trị trường của bạn là NULL, COALESCE của bạn hoạt động tốt trong trường hợp này

Để giải quyết, bạn có thể thử cách này:

SELECT COALESCE(
   (SELECT
   COALESCE(OVER_BID_PRICE, -1)
   FROM AUCTION_CAR_BID
   WHERE BID_SEQ = 2354435345)
,-1);

Hãy cho tôi biết nếu nó ổn



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. UTF-8 với mysql và php trong các ký tự tiếng Thụy Điển freebsd (åäö)

  2. Django syncdb hoạt động trong SQLite, không thành công trong MySQL

  3. Bạn có thể DROP TABLE NẾU TỒN TẠI bằng cách chỉ định tên cơ sở dữ liệu với bảng không?

  4. Tìm kiếm FULLTEXT trong MySQL không trả về bất kỳ hàng nào

  5. Độ tuổi tìm kiếm trong mysql, php