1

我正在开发一个 MYSQL 存储过程,并且我需要验证一个日期字段,如下所示,

IF (dt_wedding_date<>'') THEN
     IF (int_days_to_wedding>0) THEN
      SET vc_wedding ='F';
    ELSE
      SET vc_wedding ='P';
    END IF;
  ELSE
    SET vc_wedding = 'NA';
  END IF;

但是当dt_wedding_date为空时,它永远不会进入 ELSE 部分。我试过“is null”、“is not null”、“>”、<>、修剪函数,没有任何效果。

知道如何评估此日期字段的空值/空值吗?

4

1 回答 1

1

试试isnull函数,我在本地mysql上试过

mysql> select * from data_test;
+----+------------+
| id | gmt_create |
+----+------------+
|  1 | NULL       |
+----+------------+
1 row in set (0.00 sec)

mysql> select id, isnull(gmt_create) from data_test;
+----+--------------------+
| id | isnull(gmt_create) |
+----+--------------------+
|  1 |                  1 |
+----+--------------------+
1 row in set (0.00 sec)

mysql> 

来自w3c 参考

MySQL 确实有一个 ISNULL() 函数。但是,它的工作方式与 Microsoft 的 ISNULL() 函数有点不同。

于 2012-08-22T07:28:11.107 回答