如上表所示,每个问题都有自己的状态,但只有当 status_id = 3
(status=finished
) 时,date_completed
才会有值,否则,date_completed
应为默认 NULL
。
如何做到这一点?
我的意思是,如果有很多行的 status_id 不为 3,那么列 date_completed 应该为 NULL。我不想一一插入'NULL',我想在status_id不为3时插入它。 但似乎我无法将 status 和 date_completed 分离到另一个表中......
最佳答案
您可以使用类似的检查约束
更改表选项卡名称 添加约束 check_date CHECK(case when (status_id != 3 AND status != finish) 然后 NULL else date_completed end = date_completed );
关于mysql - 如何将默认数据插入到依赖于另一列的列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41085293/