【发布时间】:2021-07-20 16:42:24
【问题描述】:
我在表格中选择了一个值,格式如下:
day_shared =
12_month
3_month
1_week
我需要将它用于 DATE_ADD() 中的函数,这是我目前拥有的代码,但它似乎出错了,我不确定我做错了什么。非常感谢一些帮助/建议
WHERE
NOW() < DATE_ADD(date_posted, INTERVAL CONCAT(CONVERT(SUBSTRING_INDEX(day_shared,'_', 1), SIGNED INTEGER),' ',UPPER(SUBSTRING_INDEX(day_shared,'_', -1))))
从 Gordon 尝试的解决方案:
NOW() < DATE_ADD(
date_posted,
(
CASE WHEN day_shared LIKE '%_week' THEN INTERVAL (
SUBSTRING_INDEX(day_shared , '_', 1) + 0
) WEEK WHEN day_shared LIKE '%_month' SUBSTRING_INDEX(day_shared , '_', 1) + 0 DAY THEN INTERVAL (
SUBSTRING_INDEX(day_shared , '_', 1) + 0
) MONTH END
)
)
Something is wrong in your syntax '(
CASE WHEN day_shared LIKE '%_week' THEN INTERVAL (
SUBSTRING' on line 8
【问题讨论】:
-
请为任何有帮助的答案投票,如果有任何答案为您解决了这个问题,请接受。
标签: mysql sql substring concatenation