由其他列上的条件编译的Mysql生成列

时间:2018-01-16 21:03:52

标签: mysql virtual-column

是否可以创建一个在其他列上运行条件的生成的MySQL列?

例如: 列“a” - 类型布尔值 列“b” - 键入日期 生成实现逻辑的列“c”:

if (a == false) || (a == true && b < NOW()) {
    return true;
} else {
    return false;
}

2 个答案:

答案 0 :(得分:1)

您可以在MySQL中使用IF / ELSE(https://dev.mysql.com/doc/refman/5.7/en/if.html)或CASE / WHEN(https://dev.mysql.com/doc/refman/5.7/en/case.html)语句。

如果您正在编写过程,则可以将查询的输出保存到变量中并进行检查。如果你没有做一个程序,你可以在语句中进行验证,这应该有效。

祝你好运!

答案 1 :(得分:0)

您可以为数据库编写脚本。我用Ruby做过,但我确信还有很多其他的。您可以编写一个脚本来创建没有条件列的表,然后编写逻辑以根据您的条件添加一个包含值的新列。

相关问题