【问题标题】:Merge PostgreSQL queries with different columns合并具有不同列的 PostgreSQL 查询
【发布时间】:2017-11-04 03:26:48
【问题描述】:

我有 4 个不同的选择语句,每个语句都返回一列。但是,每个选择都会返回不同的列名。例如,第一个选择是“TotalPeople”,第二个选择是“Complete”。

我宁愿返回一个结果集,而不是返回两个结果集,每个结果集都有一行。

这可能吗?

假设这是我的两个查询:

SELECT count(people) FROM someTable WHERE ...
SELECT count(complete) FROM someOtherTable WHERE ...

我会返回两个结果集,例如:

| people |  
|--------|  
| 123    |  

| complete |  
|----------|  
| 15       |  

相反,我想回来

| people | complete |  
|--------|----------|  
| 123    | 15       |  

【问题讨论】:

  • 样本数据、当前查询和预期结果会有所帮助。
  • 我更新了帖子

标签: sql postgresql


【解决方案1】:
select count(table_people.id) AS PEOPLE, 
(select count(table_number.id) 
from table_number) AS NUMBER
from table_people;

在这里,您可以使用子查询将两个查询组合在一起。 希望对您有所帮助。

【讨论】:

    【解决方案2】:

    可能有更好的方法来做你想做的事。但是,您可以在selectfrom 中组合查询。例如:

    select q1.TotalPeople, q2.Complete
    from (<q1>) q1 cross join
         (<q2>) q2;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-06
      • 1970-01-01
      • 2022-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-23
      相关资源
      最近更新 更多