我可以在MySQL CASE中将值设置为空白吗?像这样

...
    SELECT ID, subNet,
    CASE
    WHEN subNet = 0 THEN ''
    ...


该值始终显示为0,而不是空白。我也尝试过IS NULL和像这样的NULL。
 ... THEN'',再像这样子子网=''

如果子网为0,我不希望看到任何值

最佳答案

是的,您可以...。

CREATE TABLE tbl
    (`id` int, `subnet` int)
;

INSERT INTO tbl
    (`id`, `subnet`)
VALUES
    (1, 0),
    (2, 27),
    (3, 50),
    (4, 2)
;


查询1:

    SELECT id,
            subnet,
            CASE WHEN subnet = 0 THEN ''
                 ELSE subnet
                 END subnet_suppressed_0
      FROM tbl


Results

| id | subnet | subnet_suppressed_0 |
|----|--------|---------------------|
|  1 |      0 |                     |
|  2 |     27 |                  27 |
|  3 |     50 |                  50 |
|  4 |      2 |                   2 |

关于mysql - 在MySQL中使用CASE将值设置为NULL或空白,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52797272/

10-13 06:47