将值与列中的范围值匹配

0 sql django

我有一个包含列注册年份的表,其值类似于“2017-2019”和“2014-2016”。

如果我的输入值为 2018,那么我的 SQL 查询将用于获取“2017-2019”之间的记录。

ID 注册年份
1 2014-2016
2 2017-2019

上面是数据库表,我的输入是2018。那么它应该返回id 2。

我的 sql 查询是什么?提前致谢

Tim*_*sen 5

老实说,现在是改变你的桌子设计的好时机。考虑这个版本,它将注册开始和结束年份存储在不同的列中:

id | registration_start | registration_end
1  | 2014               | 2016
2  | 2017               | 2019
Run Code Online (Sandbox Code Playgroud)

有了这个正确设计的表格,现在您只需要进行简单的范围比较:

id | registration_start | registration_end
1  | 2014               | 2016
2  | 2017               | 2019
Run Code Online (Sandbox Code Playgroud)