从varchar()列类型获取不同的当前和未来周数和年份

5n0oy7gb  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(226)

我有一个专栏,用weekno year的格式,比如 20-2018 . 列还包含未来几周 01-2019 或者 20-2019 等。
我需要当前和未来几周的明确列表,所以我使用下面的查询,但它只返回我今年。有没有办法得到未来的几周?

SELECT DISTINCT(booking_week) as booking_weeks_list 
from bookings 
where booking_week >= date('W-Y', time())

我有一个列,有时间戳的预订日期,但我不知道这是否可以帮助?

xzabzqsa

xzabzqsa1#

让我假设 date('W-Y', time()) 返回当前周/年。我不知道这是什么数据库,但基本上你想做:

select distinct booking_week as booking_weeks_list 
from bookings 
where right(booking_week, 4) || '-' || left(booking_week, 2) >= date('Y-W', time())

解决方案说明:
并非所有数据库都支持 left() 以及 right() . substr() / substring() 可以改用。 || 是ansi标准字符串连接运算符。这也可能因数据库而异。
我不认识这个公式 date('Y-W', time()) ,但假设它是正确的。

相关问题