当前位置:   article > 正文

mysql 字符串 常数_如何使用字符串/列值作为mysql日期间隔常数(DAY,MONTH …)?

mysql 日期常数怎么写

我有三列:日期列,整数列和varchar列,如下所示:

+------------+------+---------+

| date |value | unit |

+------------+------+---------+

| 2009-01-01 | 2 | DAY |

| 2009-02-01 | 3 | MONTH |

+------------+------+---------+

我想使用mysql date_add()函数中的整数和varchar列的值作为“日期”列中的日期的“INTVERAL”表达式的一部分。

例如:

date_add(2009-01-01,INTERVAL 2 DAY),所以’2009-01-01’来自’date’列,’2’来自“value”/ integer列,“DAY”是从’unit’/ varchar列。

而选择将如下所示:

select date_add(table.date_column, INTERVAL table.integer_column table.varchar_column) from table

问题是:它不行。日期和整数列工作,所以这样可以:

select date_add(table.date_column, INTERVAL table.integer_column DAY) from table

但是一旦我尝试用列中的字符串值替换“DAY”关键字,我会收到一条错误消息。

有任何想法吗?

我想更普遍的问题是:

如何使用动态检索的值作为常量/键表达式?在mysql中有一种“eval”功能吗?

现在这个问题已经很麻烦了,任何帮助都会真的很棒。

击败

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/548365
推荐阅读
相关标签
  

闽ICP备14008679号