56,679
社区成员
发帖
与我相关
我的任务
分享
SELECT quant.分类, rang.等级名称
-- 此处用LEFT JOIN,防止异常值超出 上下限
FROM 数量表 quant LEFT JOIN 区间表 rang ON quant.分类 = rang.分类
WHERE quant.数量 >= rang.下限 AND quant.数量 < rang.上限
这么修改,估计查询速度至少可以提高一个数量级。
select * from 数量表 as a, 区间表 as b
where a.名称 = b.名称 and a.数量 >=ifnull(b.开始数量,a.数量) and a.数量 < ifnull(b.结束数量, a.数量+1)