J'ai 2 tables
Film: DIR: P> SELECT actor, COUNT(actor) as c
FROM movie a
inner join dir b
on a.moviename=b.moviename
GROUP BY actor
HAVING COUNT(actor)=(
SELECT MAX(mycount)
FROM (
SELECT actor, COUNT(actor) as mycount
FROM movie a
inner join dir b
on a.moviename=b.moviename
GROUP BY actor
)
);
3 Réponses :
Ajouter un nom d'alias:
Essayez quelque chose comme ça
SELECT TOP (1) actor, COUNT(d.col1) as c FROM movie a inner join dir b on a.moviename=b.moviename Group BY actor ORDER BY c DESC
Vous devez ajouter le nom d'alias Comme @ @ Squirrel ''s Commentaire. P>
Reportez-vous à ce message pour connaître la raison pour laquelle. p>
sous-requête D'après avoir dû avoir un alias p>
Cependant, votre requête est assez complexe inutilement. P>
@Adi fait cela répondre à votre question? S'il vous plaît donnez-moi vos commentaires, merci.
Je vous aide simplement à reformater votre requête. Vous avez manqué l'alias pour la dernière sous-requête. Aussi votre requête peut être très simplifiée
Ohh yess merci! et pourquoi la dernière sous-requête nécessite-t-elle un alias
Je l'appellerais
Table dérivé code>. Le moteur SQL Server attend un nom pourTable dérivée code>. Le doc docs.microsoft.com/en-us/sql/t-sql/queries/... a déclaré quelorsqu'une table dérivée, une fonction de jonction ou une fonction de valorisation de la table ou une clause d'opérateur (telle que pivot ou impublissement ) est utilisé, le ** requis ** table_alias ..... code>