Dies ist das erste Mal, dass ich versuche, eine Sicht in T-SQL erstellen, aber ich erhalte eine Fehlermeldung: CREATE VIEW muss die einzige Anweisung in der sein Stapel.Erstellen Sie Ansicht Fehler als Anweisung muss nur eine im Batch
Warum gibt es mir diesen Fehler und wie kann es behoben werden?
Ich schaute auf einige Beispiele, aber immer noch nicht ganz sicher, was ich tun muss.
CREATE PROCEDURE [dbo].[League_Table_Insert]
@LeagueName VARCHAR(30)
AS
SET NOCOUNT ON
BEGIN
CREATE VIEW League_Table AS
SELECT
TeamName AS Team,
COUNT(*) Played,
COUNT(CASE WHEN HomeScore > AwayScore THEN 1 END) Wins,
COUNT(CASE WHEN AwayScore > HomeScore THEN 1 END) Losses,
COUNT(CASE WHEN HomeScore = AwayScore THEN 1 END) Draws,
SUM(HomeScore) Goals_Scored,
SUM(AwayScore) Goals_Against,
SUM(HomeScore) - SUM(AwayScore) Goal_Difference,
SUM(
CASE WHEN HomeScore > AwayScore THEN 3 ELSE 0 END
+ CASE WHEN HomeScore = AwayScore THEN 1 ELSE 0 END
) Points
FROM
(
SELECT TeamName, HomeScore, AwayScore FROM dbo.Team t INNER JOIN dbo.Fixture f ON t.TeamID = f.HomeTeamID INNER JOIN dbo.League l ON f.LeagueID = l.LeagueID WHERE LeagueName = @LeagueName
UNION ALL
SELECT TeamName, HomeScore, AwayScore FROM dbo.Team t INNER JOIN dbo.Fixture f ON t.TeamID = f.HomeTeamID INNER JOIN dbo.League l ON f.LeagueID = l.LeagueID WHERE LeagueName = @LeagueName
) matches
GROUP BY TeamName
ORDER BY Points DESC, Goal_Difference DESC;
Bitte zeigen Sie Ihre en Reifenabfrage. Außerdem können Sie eine Variable in einer Ansicht nicht verwenden. –
Sie können nicht @Variable verwenden, um Ansicht zu erstellen. –
@FelixPamittan das ist die gesamte Abfrage, ich habe gerade erstellt erstellen auf der Oberseite, aber ich nehme an, dass das falsch ist? –