在单个查询中计算多个列的多个值

时间:2015-12-10 05:39:56

标签: mysql

我有一个用于查找产品的搜索部分,其中包含用于过滤目的的导航栏,其中显示了每个产品功能的总结果。例如:

总结果60

  • 新(32)

  • 使用过(28)

  • 特别(10)
  • 公司(50)

在mysql中,我有以下查询(每个功能一个)

类型

    SELECT  a.id_type, whois.name as whoisName, COUNT(a.id_type) as  countWhois 

        FROM (published a
            INNER JOIN types whois ON whois.id = a.id_type)

        GROUP BY id_type

     +---------+------------+------------+
     | id_type | whoisName  | countWhois |
     +---------+------------+------------+
     |       0 | Company    |         50 |
     |       1 | Particular |         10 |
     +---------+------------+------------+

条件

      SELECT  a.id_condition, cond.name as condName, COUNT(a.id_condition) as countCondition

        FROM (published a
                INNER JOIN conditions cond ON cond.id = a.id_condition)

        GROUP BY id_condition

     +--------------+---------------+----------------+
     | id_condition | conditionName | countCondition |
     +--------------+---------------+----------------+
     |            0 | New           |             32 |
     |            1 | Used          |             28 |
     +--------------+---------------+----------------+

我想在一个查询中总结这两个查询,但无法弄清楚如何。我在想这样的事情:

+---------+------------+------------+--------------+---------------+----------------+
| id_type | whoisName  | countWhois | id_condition | conditionName | countCondition |
+---------+------------+------------+--------------+---------------+----------------+
| 0       | Company    | 50         | NULL         | NULL          | NULL           |
| 1       | Particular | 10         | NULL         | NULL          | NULL           |
| NULL    | NULL       | NULL       | 0            | New           | 32             |
| NULL    | NULL       | NULL       | 1            | Used          | 28             |
+---------+------------+------------+--------------+---------------+----------------+

这可能吗? 谢谢,对不起,如果我的英语不好,那不是我的母语。

0 个答案:

没有答案