sql查询语句匹配优先级

sql 语句查询数据条数,

有两种匹配条件,第一种产品匹配,第二种类型匹配,

优先匹配产品,产品匹配不到就继续匹配,查看是否类型匹配。

匹配到了则退出匹配,只记录产品匹配的数据条数

我用case when 匹配到产品不会退出匹配还是会继续匹配

没太看懂你想匹配什么玩意
是按列进行筛选吗
那不就是where 条件1 or 条件2吗,条件1不成立那么条件2成立也行

select * from 表 where 产品匹配条件
union
select * from 表 where not exist(产品匹配条件) and 类型匹配条件

匹配到了就停止匹配,可以用TOP(1)取第一条匹配到的记录就行

最后的方式通过 后台代码逻辑控制,先执行前置条件,后执行后置条件