mysql - 如何验证 NULL/EMPTY 的 MYSQL 日期字段?

标签 mysql validation date stored-procedures

我正在开发一个 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 为 null 时,它永远不会进入 ELSE 部分。我尝试了“is null”、“is not null”、“>”、<>、trim 函数,但没有任何效果。

知道如何评估此日期字段是否为空值吗?

最佳答案

试试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 reference

MySQL does have an ISNULL() function. However, it works a little bit different from Microsoft's ISNULL() function.

关于mysql - 如何验证 NULL/EMPTY 的 MYSQL 日期字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12067944/

相关文章:

sql-server - 如何利用 "EXEC @sql"?

date - 由于时间戳记长度,从Spark到Elasticsearch写入日期时出错

javascript - 是否有支持日期对象(标签)的 Javascript 图表 API?

php - 使用 Laravel 迁移添加 'on update' 和 'on delete' 外键约束

mysql - Zend 框架中的 "SQLSTATE[HY000]: General error"

android - RxJava- 动态 EditText 上的 RxAndroid 表单验证

asp.net - 如何在ASP.NET MVC 3中的HttpPost操作中禁用验证?

java - 从 Web 服务响应中删除时区

MySQL 错误 1064 和 1146

php - 计算 MySQL 数据库列中值的查询