Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用两个表获取项目的降序列表_Sql_Sql Server_Greatest N Per Group - Fatal编程技术网

Sql 使用两个表获取项目的降序列表

Sql 使用两个表获取项目的降序列表,sql,sql-server,greatest-n-per-group,Sql,Sql Server,Greatest N Per Group,这些是我的表格定义 CREATE TABLE [dbo].[HistoricoSeries] ( [IDHistoricoSeries] INT IDENTITY (1, 1) NOT NULL, [IDUtilizador] INT NOT NULL, [codepisodio] INT NOT NULL, CONSTRAINT [PK_historicoseries] PRIMARY KEY CLUSTERED ([IDHistorico

这些是我的表格定义

CREATE TABLE [dbo].[HistoricoSeries] (
    [IDHistoricoSeries] INT IDENTITY (1, 1) NOT NULL,
    [IDUtilizador]      INT NOT NULL,
    [codepisodio]       INT NOT NULL,
    CONSTRAINT [PK_historicoseries] PRIMARY KEY CLUSTERED ([IDHistoricoSeries] ASC),
    CONSTRAINT [FK_96] FOREIGN KEY ([IDUtilizador]) REFERENCES [dbo].[Utilizadores] ([IDUtilizador]),
    CONSTRAINT [FK_hse] FOREIGN KEY ([codepisodio]) REFERENCES [dbo].[EPISODIOS] ([codepisodio])
);

CREATE TABLE [dbo].[EPISODIOS] (
    [idepisodio]     INT          IDENTITY (1, 1) NOT NULL,
    [codepisodio]    INT          NOT NULL,
    [codserie]       INT          NOT NULL,
    [codtemporada]   INT          NOT NULL,
    [numeroepisodio] INT          NOT NULL,
    [tituloepisodio] VARCHAR (53) NOT NULL,
    [duracaominutos] INT          NOT NULL,
    PRIMARY KEY CLUSTERED ([codepisodio] ASC)
);
这是我的SQL Server查询,我已经黑客攻击了很长一段时间,没有结果

我的最终目标是从表中列出最受关注的剧集,但这是一个错误

当子查询未引入EXISTS时,只能在选择列表中指定一个表达式

它自己出现了,我不知道如何修复

有人能透露一点信息吗?
谢谢。

您的代码看起来像SQL Server。如果是这样,您可以在子查询中使用
TOP WITH TIES

string maisVistoEpisodio = "SELECT * FROM EPISODIOS WHERE EPISODIOS.codepisodio IN (SELECT codepisodio, count(codepisodio) AS mais_vistos FROM HISTORICOSERIES GROUP BY codepisodio ORDER BY COUNT (codepisodio) DESC)";

用您正在使用的数据库标记您的问题。请解释“最受关注”与数据的关系。
WHERE-IN(SELECT…
子查询必须返回一列,但子查询返回两列。在我了解到“
TOP-with-TIES
”之前,应该使用
JOIN
而不是
WHERE-IN
”-现在我希望有一个带领结的
上衣
和带高领的
上衣
,哦,好吧。确实是sqlserver。“带领带的上衣”我不知道,但那是学习!将尽快尝试并发回。这是完美的!我永远也不会一个人去那里!谢谢
SELECT E.*
FROM EPISODIOS E
WHERE E.codepisodio IN (SELECT TOP (1) WITH TIES HS.codepisodio
                        FROM HISTORICOSERIES HS
                        GROUP BY HS.codepisodio
                        ORDER BY COUNT(*) DESC
                       )