如何在每年的一系列日期之间进行查询?

dxpyg8gm  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(285)

考虑到table resumes 以及 experiences 在一对多关系中使用以下结构

resumes

  id int
  title varchar(255)

experiencies

  id int
  resume_id int
  from_date datetime
  to_date datetime

我尝试获取参数年份介于两个值之间的所有简历​​在田野里 from_date 以及 to_date 在经验表中
我在结构上附加了一个sqlfidlle
例如,给定以下数据
表格继续

餐桌体验

如果参数为 2010 我期望的结果是id为1和2的简历
1因为第一行中的经历是在2010年,尽管与简历1相关的其他经历不是在2010年。因为2010年介于2008年和2018年之间
事先谢谢你的帮助

jk9hmnmh

jk9hmnmh1#

你可以用 Year 函数从日期列获取年份,并应用如下where子句-

select * 
from experiencies 
where year(from_date) <= 2010 and year(to_date) >= 2010

你可以用 BETWEEN 在where子句中也是。

SET @Param = 2010
select * 
from experiencies 
where @Param between year(from_date) and year(to_date)

相关问题