MySQL嵌套多达5个过滤器
问题描述:
我喜欢做一个嵌套选择多达5个过滤器,我仍然在3个过滤器。这是代码。MySQL嵌套多达5个过滤器
SELECT * FROM anvariety_trait
INNER JOIN
(SELECT variety_id FROM anvariety_trait
INNER JOIN (SELECT variety_id FROM anvariety_trait
WHERE
trait_id = 1 and trait_value = 1) T2 USING (variety_id)
where
trait_id = 2 AND trait_value = 1) T3 USING (variety_id)
INNER JOIN tblVariety USING (variety_id)
WHERE
trait_id = 3 and trait_value = 1;
答
我能够通过将子查询,以添加过滤器 “INNER JOIN(SELECT variety_id FROM anvariety_trait WHERE trait_id = 1和trait_value = 1)T1 USING(variety_id)”。我做这件事情要容易得多,也不复杂,但现在它对我很有用。
SELECT * FROM anvariety_trait
INNER JOIN
(SELECT variety_id FROM anvariety_trait
INNER JOIN (SELECT variety_id FROM anvariety_trait
INNER JOIN(SELECT variety_id FROM anvariety_trait
INNER JOIN(SELECT variety_id FROM anvariety_trait
WHERE
trait_id = 1 and trait_value = 1) T1 USING (variety_id)
WHERE
trait_id = 2 and trait_value = 1) T2 USING (variety_id)
WHERE
trait_id = 3 and trait_value = 1) T3 USING (variety_id)
WHERE
trait_id = 4 AND trait_value = 1) T4 USING (variety_id)
INNER JOIN tblVariety USING (variety_id)
WHERE
trait_id = 6 and trait_value = 1;
我敢打赌,没人理解你的问题。请添加更多详情。 – RubahMalam
好吧,它就像excel的过滤器函数,您可以选择某个值,然后它只显示具有选定值的行。 –