CREATE VIEW 函数中的 INNER JOIN 问题

0 sql t-sql sql-server

我在创建视图时遇到问题。当我使用 an 时INNER JOIN,一切正常,但是当我尝试创建一个 时VIEW,出现此错误:

列“testukas.numeris”在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中。

我的查询是:

IF OBJECT_ID('testukas') IS NOT NULL
    DROP VIEW testukas
GO

CREATE VIEW testukas
AS
    SELECT 
        a.numeris,
        tipoID,
        operatoriausID,
        planoPavadinimas,
        kaina,
        internetoPlanoID
    FROM 
        Planas AS p
    INNER JOIN 
        Abonentas AS a ON p.planoID = a.planoID
GO

SELECT 
    numeris, MAX(kaina)
FROM testukas
Run Code Online (Sandbox Code Playgroud)

我需要输入来解决这个问题。

Gor*_*off 5

错误似乎很清楚。您需要一个GROUP BY子句,因为这MAX()使它成为聚合查询:

select numeris, max(kaina)
from testukas 
group by numeris;
Run Code Online (Sandbox Code Playgroud)