0
我有2个表:SQL查询时,匹配,选择匹配时,不进行其他行选择行
attribuut
attribuutvalue
他们有一个一对一很多关系。 一个attribuut可以有多个attribuutvalues。 这些属性值包含状态。
现在我想查询这给我回的最新attribuutvalue从attribuut,其中有: 状态或状态。
然后我打我的问题: 当attribuut包含状态,只有符合国家最新attribuutvalue的attribuutvalue应该显示。
SELECT DISTINCT * FROM attribuut as att
LEFT JOIN attribuutvalue as value ON (value.attribuuthead = att.displayid)
WHERE value.status = 3 OR (value.status = 6
AND NOT EXISTS
(SELECT * FROM attribuutvalue as value2 WHERE value2.valueid = value.valueid AND value2.status = 4))
ORDER BY valueid DESC
但是,这给了我不是我想要的结果集。显示状态4仍然有属性值。 它不给我只在列表中的最后一条记录...
这是相当混乱,我认为你需要提供一些样本数据和期望的输出澄清,请! – JNK