【发布时间】:2021-03-15 08:14:28
【问题描述】:
我正在尝试比较两个日期以过滤我的选择。
我在 db 中得到了这个日期:2020-W20
现在我想过滤掉比今天(2020-49 年)更早的日期
所以我试图从 db 中的日期中删除“-W”。
并从今天的日期中删除了“-”。
我最终得到了 (d2)202020 和 ($this_y_w)202049。
我的选择中没有:
SELECT CONCAT(SUBSTR(delivery_year_week,1,4), SUBSTR(delivery_year_week,7,2)) as d2
FROM table
WHERE d2 >= '$this_y_w'
ORDER
BY delivery_year_week ASC
但这不起作用。
那么我应该如何构建查询以选择大于或等于“$this_y_w”(2020-49 或 202049)的“delivery_year_week”(2020-W20 或 202020)?
【问题讨论】:
-
不是你“选择大于或等于“$this_y_w”(2020-49 或 202049)的“delivery_year_week”(2020-W20 或 202020)'永远不会是真的
-
@P.Salmon of corse 不是。但是“delivery_year_week”的日期大于 2020-49。这只是一个示例日期。 (2020-20)。我如何通过复制 concat 部分来解决它.. 并在 WHERE 子句中用 d2 替换它
-
@P.Salmon 我已经做过了。
标签: mysql sql string datetime where-clause