有两张表 表A 中的每一行 都是表B 中每一列的约束值
也就是 表B中的y1列 的值 要在表A 的第一行 的Max 跟Min范围内才算符合条件(y2列 的范围要在表A 中的第二行 依次类推).
要求助的是查询出不符合条件的 结果
给你写好了
declare @a table ( id int , maxvalue int, minvalue int ) declare @b table ( id int, y1 int, y2 int, y3 int, y4 int, y5 int, y6 int ) select distinct b.* from @b b inner join @a a1 on a1.id=1 inner join @a a2 on a2.id=2 inner join @a a3 on a3.id=3 ..... inner join @a a6 on a6.id=6 where b.y1 between a1.minvalue and a1.maxvalue and b.y2 between a2.minvalue and a2.maxvalue ...... and b.y6 between a6.minvalue and a6.maxvalue
这个百度就可以了啊
sql自带最大值最小值的函数,先获取a表的边界值。然后放到B表查询,用或连接查询