如何从MYSQL中的另一个查询结果中减去查询结果

第一个查询

   (SELECT a.cat_id,a.cat_name,a.cat_description,b.subcat_name,b.subcat_description 
     FROM trade_categories a 
LEFT JOIN trade_subcategories b ON a.cat_id = b.cat_id 
    WHERE a.cat_name LIKE '%catty%' 
       OR a.cat_description LIKE '%catty%') 
UNION 
  (SELECT c.cat_id,d.cat_name,d.cat_description,c.subcat_name,c.subcat_description 
     FROM trade_subcategories c 
LEFT JOIN trade_categories d ON c.cat_id = d.cat_id 
    WHERE c.subcat_name LIKE '%catty%' 
       OR c.subcat_description LIKE '%catty%') 

第二个查询:

SELECT x.cat_id,x.cat_name,x.cat_description,y.subcat_name,y.subcat_description 
 FROM  trade_categories x 
  JOIN trade_subcategories y ON x.cat_id = y.cat_id 
 WHERE (   x.cat_name LIKE '%catty%' 
        OR x.cat_description LIKE '%catty%' ) 
   AND (   y.subcat_name NOT LIKE '%catty%' 
        OR y.subcat_description NOT LIKE '%catty%' )

我想从第一个查询结果中减去第二个查询结果.
最佳答案
http://www.bitbybit.dk/carsten/blog/?p=71

要么
例:

SELECT Name FROM employee1  WHERE name NOT IN (SELECT name FROM employee2);

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。