Hướng dẫn mysql case when value is null - trường hợp mysql khi giá trị là null

Hãy thử sử dụng

SELECT guides.Gud_Id
    , guides.Gud_Image
    , guides.Gud_SubEditor
    , guides.Gud_Reprint_Status
    , guides.Gud_Publish_Date
    , guides.Gud_Img_Chk
    , guides.Gud_Published
    , guides.Gud_View
    , (
        CASE 
            WHEN guides.Gud_Publish_Date IS NULL
            THEN 'Unscheduled'
            ELSE 'Forth Coming Titles'
        END
      ) AS Schedules
FROM guides
1

SELECT guides.Gud_Id
    , guides.Gud_Image
    , guides.Gud_SubEditor
    , guides.Gud_Reprint_Status
    , guides.Gud_Publish_Date
    , guides.Gud_Img_Chk
    , guides.Gud_Published
    , guides.Gud_View
    , IF(guides.Gud_Publish_Date IS NULL,'Unscheduled','Forth Coming Titles') 
             AS Schedules
FROM guides

hoặc nếu bạn thực sự muốn

SELECT guides.Gud_Id
    , guides.Gud_Image
    , guides.Gud_SubEditor
    , guides.Gud_Reprint_Status
    , guides.Gud_Publish_Date
    , guides.Gud_Img_Chk
    , guides.Gud_Published
    , guides.Gud_View
    , (
        CASE 
            WHEN guides.Gud_Publish_Date IS NULL
            THEN 'Unscheduled'
            ELSE 'Forth Coming Titles'
        END
      ) AS Schedules
FROM guides
2

SELECT guides.Gud_Id
    , guides.Gud_Image
    , guides.Gud_SubEditor
    , guides.Gud_Reprint_Status
    , guides.Gud_Publish_Date
    , guides.Gud_Img_Chk
    , guides.Gud_Published
    , guides.Gud_View
    , (
        CASE 
            WHEN guides.Gud_Publish_Date IS NULL
            THEN 'Unscheduled'
            ELSE 'Forth Coming Titles'
        END
      ) AS Schedules
FROM guides

Trong bảng của khách hàng, nhiều khách hàng không có dữ liệu trạng thái trong cột trạng thái do đó khi chúng tôi chọn khách hàng, cột trạng thái hiển thị các giá trị null, điều này không có ý nghĩa cho mục đích báo cáo.

╔════════════════╦════════════════════╦═══════╦═════════╗
║ customerNumber ║    customerName    ║ state ║ country ║
╠════════════════╬════════════════════╬═══════╬═════════╣
║            103 ║ Atelier graphique  ║ NULL  ║ France  ║
║            112 ║ Signal Gift Stores ║ NV    ║ USA     ║
╚════════════════╩════════════════════╩═══════╩═════════╝

Tôi đang cố gắng cải thiện đầu ra bằng cách sử dụng trường hợp, nhưng gặp lỗi:

SELECT 
    customerNumber,
    customerName,
    CASE 
      WHEN state IS NULL, THEN 'N/A'
      ELSE state
    END) as state,
    country
FROM
    customers;

Lỗi:

Bạn có lỗi trong cú pháp SQL của mình; Kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn để sử dụng Cú pháp phù hợp để sử dụng gần 'sau đó là' N/A '

Kết quả như ý:

╔════════════════╦════════════════════╦═══════╦═════════╗
║ customerNumber ║    customerName    ║ state ║ country ║
╠════════════════╬════════════════════╬═══════╬═════════╣
║            103 ║ Atelier graphique  ║ N/A   ║ France  ║
║            112 ║ Signal Gift Stores ║ NV    ║ USA     ║
╚════════════════╩════════════════════╩═══════╩═════════╝


Đối với điều này, bạn có thể sử dụng tuyên bố trường hợp. Trước tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   -> (
   -> Name varchar(20),
   -> Marks1 int,
   -> Marks2 int
   -> );
Query OK, 0 rows affected (0.72 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn−

mysql> insert into DemoTable values('Chris',45,null);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('David',null,78);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('Bob',67,98);
Query OK, 1 row affected (0.14 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh chọn -

mysql> select *from DemoTable;

Điều này sẽ tạo ra đầu ra sau -

+-------+--------+--------+
| Name  | Marks1 | Marks2 |
+-------+--------+--------+
| Chris |     45 |   NULL |
| David |   NULL |     78 |
| Bob   |     67 |     98 |
+-------+--------+--------+
3 rows in set (0.00 sec)

Đây là truy vấn để thực hiện trường hợp khi -

mysql> select *,
   -> (case when Marks1 is null then null else Marks2 end ) as Value
   -> from DemoTable;

Điều này sẽ tạo ra đầu ra sau -

SELECT guides.Gud_Id
    , guides.Gud_Image
    , guides.Gud_SubEditor
    , guides.Gud_Reprint_Status
    , guides.Gud_Publish_Date
    , guides.Gud_Img_Chk
    , guides.Gud_Published
    , guides.Gud_View
    , (
        CASE 
            WHEN guides.Gud_Publish_Date IS NULL
            THEN 'Unscheduled'
            ELSE 'Forth Coming Titles'
        END
      ) AS Schedules
FROM guides
0

Hướng dẫn mysql case when value is null - trường hợp mysql khi giá trị là null

Đây là truy vấn để thực hiện trường hợp khi -

  • Câu hỏi và câu trả lời liên quan
  • Cập nhật Mass Mass MySQL với trường hợp khi/ sau đó/ khác?
  • Trả về null cho date_format khi đầu vào là null trong mysql?
  • Có điều kiện không phải là trường hợp null mysql?
  • Hiển thị kết quả với giá trị không null trước và sau đó với giá trị null trong mysql
  • Tổng hợp nếu tất cả các hàng không phải là null khác trả về null trong mysql?
  • Làm việc với NULL và không phải là NULL trong MySQL
  • Cập nhật cột A nếu NULL, khác Cập nhật cột B, nếu không nếu cả hai cột không làm gì không làm gì với MySQL
  • Khi hàm mysql in () trả về null?
  • Khi hàm mysql make_set () trả về null?
  • Trong điều kiện nào, câu lệnh trường hợp MySQL trả về null?
  • Khi biểu thức số học MySQL trả về NULL?
  • Chúng ta có thể sử dụng khóa chính (cột1, cột2) trong MySQL để tạo các cặp không?
  • Khi hàm mysql find_in_set () trả về null dưới dạng đầu ra?
  • Sự khác biệt giữa mysql null và không phải là null?
  • Trong mysql, sự khác biệt giữa! = Null và không phải là null là gì?

NULL có phải là câu lệnh mysql không?

Tuyên bố trường hợp không thể có một mệnh đề NULL khác, và nó bị chấm dứt với trường hợp cuối thay vì kết thúc.cannot have an ELSE NULL clause, and it is terminated with END CASE instead of END .

Làm thế nào để bạn xóa các giá trị null khỏi một câu lệnh trường hợp?

Có ba cách để chúng ta có thể xóa các giá trị null trong dữ liệu bảng và hiển thị chúng cho người dùng.Trong dữ liệu bảng của chúng tôi, một số cột chứa các giá trị null.Chúng ta có thể thay thế nó bằng hàm isnull (), hàm hợp kim () và tuyên bố trường hợp.ISNULL() function , COALESCE() function, and CASE Statement.

Làm cách nào để kiểm tra xem một trường có trống trong mysql không?

Chọn * Từ của bạn, trong đó yourSpecificColumnName là null hoặc yourspecificColumnName = '';Có thể sử dụng ràng buộc null bất cứ khi nào cột trống và ký hiệu ('') được sử dụng khi có giá trị trống.; The IS NULL constraint can be used whenever the column is empty and the symbol ( ' ') is used when there is empty value.

Không phải là NULL trong câu lệnh CASE SQL Server?

Điều kiện không phải là null được sử dụng trong SQL để kiểm tra giá trị không null.Nó trả về đúng nếu tìm thấy một giá trị không null, nếu không nó sẽ trả về sai.Nó có thể được sử dụng trong một câu lệnh CHỌN, CHỌN, CẬP NHẬT hoặc XÓA.used in SQL to test for a non-NULL value. It returns TRUE if a non-NULL value is found, otherwise it returns FALSE. It can be used in a SELECT, INSERT, UPDATE, or DELETE statement.