php - SQL - 组合查询

标签 php mysql sql

<分区>

我有两个查询完全按照我的意愿执行,但是,我想尝试将它们结合起来。

查询 1:

SELECT DISTINCT categories.id FROM categories 
    INNER JOIN product_categories 
        ON product_categories.category_id=categories.id 
    INNER JOIN products 
        ON product_categories.product_id=products.id 
    WHERE 
        categories.is_sub_cat='1' AND 
        categories.is_paused!='1' AND 
        products.nexus='1'

查询 2:

SELECT DISTINCT categories.top_cat FROM categories 
    INNER JOIN product_categories 
        ON product_categories.category_id=categories.id 
    INNER JOIN products 
        ON product_categories.product_id=products.id 
    WHERE 
        categories.top_cat!='0' AND 
        categories.is_paused!='1' AND 
        products.nexus='1'

是否可以将这些组合成 1 个查询,或者我应该在执行两个查询后在 PHP 中组合结果数组?

最佳答案

您可以使用UNION 合并两个查询

SELECT DISTINCT categories.id FROM categories 
    INNER JOIN product_categories 
        ON product_categories.category_id=categories.id 
    INNER JOIN products 
        ON product_categories.product_id=products.id 
    WHERE 
        categories.is_sub_cat='1' AND 
        categories.is_paused!='1' AND 
        products.nexus='1'
UNION 

SELECT DISTINCT categories.top_cat FROM categories 
    INNER JOIN product_categories 
        ON product_categories.category_id=categories.id 
    INNER JOIN products 
        ON product_categories.product_id=products.id 
    WHERE 
        categories.top_cat!='0' AND 
        categories.is_paused!='1' AND 
        products.nexus='1'

关于php - SQL - 组合查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54628401/

相关文章:

php - WordPress MySQL 查询不工作但类似的查询工作

sql - Impala double值未正确加载

php - 急切的 php 新手请求有关 WordPress 代码的建议

mysql 正则表达式查询挂起,但在 mysql 进程重新启动时显示结果

java - 检查数据库中是否存在该记录

mysql - 使用临时表不起作用 - MYSQL

mysql - 计算数据库列中的单词数

php - Nginx 作为长轮询时的反向代理

php - 三个 MySQL 请求与 php 位于一个文件的不同位置

php - MySQL INSERT 查询不更新数据库