MySQL>从数据库中提取每个ID之一

时间:2014-11-13 13:51:16

标签: mysql

所以基本上我有一些与相关类别相关的分类法。分类关系在cat_1_id,cat_2_id,cat_3_id等中定义。有5种可能的类别。

我想运行一个查询,允许我拉出包含每个类别的三个字段。我知道我可以在三个单独的查询中执行此操作,但我希望将其保留为一个。关于如何做到这一点的任何想法?

我的查询:

SELECT b.title, b.id, a.thumb_id, a.title, a.friendly_url, a.abstract
From `Article` a
JOIN `ArticleCategory` b
WHERE a.status='A' AND 
(a.cat_1_id = 1 OR a.cat_1_id = 2 OR a.cat_1_id = 3 
OR a.cat_2_id = 1 OR a.cat_2_id = 2 OR a.cat_2_id = 3 
OR a.cat_3_id = 1 OR a.cat_3_id = 2 OR a.cat_3_id = 3 
OR a.cat_4_id = 1     OR a.cat_4_id = 2 
OR a.cat_4_id = 3 OR a.cat_5_id = 1 
OR a.cat_5_id = 2 OR a.cat_5_id = 3) 
ORDER BY  a.publication_date DESC LIMIT 3

0 个答案:

没有答案