我想取最近五年的年份,但mysql说不支持in+limit,应该怎么写啊?

image.png

用户N1887570 发布于 2022-2-9 17:03
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
CD20160914Lv8专家互助
发布于2022-2-9 17:07(编辑于 2022-2-9 17:38)

再多套一层。类似这样

mysql 子查询不支持limit - xuzhujack - 博客园 (cnblogs.com)

and produce year in (

      SELECT produce year from( SELECT distinct produce year from benchmarking index where produce year<='2022'order by produce year desc limit 5))

最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-2-9 17:09(编辑于 2022-2-9 17:10)

and produce_year in(SELECT distinct produce year from benchmarking_index where produce year<= '2022’order by produce year desc limit 5)

改成  and exists ( select * from (SELECT distinct produce_year from benchmarking_index where produce year<= '2022’order by produce year desc limit 5 ) a where a.produce_year=benchmarking_index.produce_year)

试试,没用MYSQL无法验证

最佳回答
0
MartinXueLv5见习互助
发布于2022-2-9 17:16

produce_year 

between 选择的年份 - 5 and 选择的年份然后用year (选择日期) 获取年份

  • 3关注人数
  • 323浏览人数
  • 最后回答于:2022-2-9 17:38
    请选择关闭问题的原因
    确定 取消
    返回顶部