如果我有这两个表:
表1:
item category rating
------ -------- ------
table furniture 6
chair furniture 5
sofa furniture 7
bed furniture 4
apple food 7
banana food 6
spinach food 9
almonds food 8
happiness feeling 7
compassion feeling 6
love feeling 8
admiration feeling 7
和table2:
category minimum_rating
-------- --------------
furniture 6
food 8
feeling 7
并考虑到每个类别的值minimum_rating将每月修订,因此它会改变...我如何查询table1与table2的关系,以便它将取得该类别的minimum_rating值item并返回table1中那些评级等于或高于最低评级的项目?在这种情况下,查询将返回:
item category rating
------ -------- ------
table furniture 6
sofa furniture 7
spinach food 9
almonds food 8
happiness feeling 7
love feeling 8
admiration feeling 7
非常感谢您的知识输入!
答案 0 :(得分:1)
我认为您需要在表格中JOIN
,如下所示。您也可以说t1.rating = t2.minimum_rating
select t1.*
from table1 t1 join table2 t2 on t1.category = t2.category
where t1.rating >= t2.minimum_rating;
答案 1 :(得分:1)
简单的联接应该可以胜任:
Select a.* from table1 as a
inner join table2 as b on a.furniture = b.furniture and a.rating >= b.minimum_rating;