如何在没有算术计数的SQL子查询中使用GROUP BY

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在没有算术计数的SQL子查询中使用GROUP BY相关的知识,希望对你有一定的参考价值。

结果是很多重复行(所有conlums重复)如何使用group by而没有内部连接?我在这种情况下使用子查询栈。

这是虚构的例子,不要担心逻辑或感觉这个例子。我需要在许多表的子查询中使用group by。

我可以使用group by with inner join,但是这种情况我不能使用inner join。

select    
    NAME,
    AGE,
    JOB

from (
    select 
        pe.name NAME,
        pe.age AGE,
        jb.work JOB
    from 
        pearson pe,
        job jb
    )
group by NAME, AGE, JOB
答案

是的,在这种情况下您可以使用组,但是您需要创建内部查询的别名,如下所示:

SELECT A.NAME, A.AGE, A.JOB
FROM (
    SELECT pe.name NAME, pe.age AGE, jb.`function` JOB
    FROM pearson pe, job jb
) A
GROUP BY A.NAME, A.AGE, A.JOB;

以上是关于如何在没有算术计数的SQL子查询中使用GROUP BY的主要内容,如果未能解决你的问题,请参考以下文章

如何优化执行嵌套在 group-by 子句中的计数的 SQL 查询?

在没有 FROM 子查询的 JOIN 中写入具有总和限制的 SQL 计数

优化 SQL:如何重写此查询以提高性能? (使用子查询,摆脱 GROUP BY?)

如何在一个查询中的多个子查询上正确使用多个 group_concats 而没有区别?

如何在mysql中使用带有group by的子查询?

如何提高 SQL Server 查询的性能以选择具有值的行不在子查询中的一次计数