搜索多个组合列

时间:2013-09-16 09:10:11

标签: sql

我有以下观点:

enter image description here

我想在那里搜索,让我们说:属性名称如'Umax'和value_num = 550 但要显示该部分(part_id)的所有属性。所以在这种情况下,我希望看到第8,10和11部分的所有属性。 此外,我想为更多案件做到这一点。例如:属性名称如'Umax'和value_num = 550,属性名称如'Imax'和value_num = 5.5 这应该只显示第8部分的所有属性。 也许我是以完全错误的方式尝试它,但我现在真的在努力奋斗!

2 个答案:

答案 0 :(得分:1)

您可以使用EXISTS()

SELECT  a.*
FROM    tableName a
WHERE   EXISTS
        (
            SELECT  1
            FROM    tableName b
            WHERE   a.part_ID = b.part_ID AND
                    b.propertyname = 'umax' AND
                    b.value_num = 8
        )

答案 1 :(得分:0)

select * from table1 where part_id in 
(select distinct part_id from table1 where propertyname = 'UMax' and <any other criteria>)

table1替换为您的表/视图名称。您可以添加其他条件,例如value_num=5.5,它仍应有效。