Hallo Ich habe eine Tabelle, die einen Filmnamen, das Datum hat es veröffentlicht wurde, die Kosten und den Umsatz. Ich versuche, eine Abfrage zu schreiben, wie viele Filme angezeigt werden pro Monat veröffentlicht wurdenErhalten doppelte Datensätze in derselben Zeile anzuzeigen
CREATE TABLE movies_200249154(
movieName VARCHAR(30),
releaseDate DATE,
costInMillions INT (20),
revenueInMillions INT (20)
);
Oben ist meine Tabelle
Hier ist meine aktuelle Abfrage
SELECT DISTINCTROW (monthname(releaseDate)) AS 'Month released', COUNT(*)movieName
FROM movies_200249154
GROUP BY movieName;
Gerade jetzt meine Abfrage wird die Anzeige Monat und die Zählung für den Film (immer 1) und zeigt Duplikate. Wenn ich SELECT DISTINCT verwende, wird nur 1 Film pro Monat angezeigt. Scheinbar vergessen die anderen Daten.
Was ich brauche, ist für meine Frage, um den Monat UND die Menge der Filme in diesem Monat angezeigt. Zum Beispiel wiederholt es zur Zeit 4. Juni mal mit einer Zählung von 1. Die Abfrage würde ich Anzeige benötigen Juni und eine Anzahl von 4.
Jede Hilfe sehr geschätzt wird
MySQL <> SQL-Server was ist das? Und pro eine Lösung ... gruppieren Sie nach Moviename, so dass die Informationen jedes Films in einer separaten Zeile stehen. Sie müssen nach Monat gruppieren, da Sie die Filme pro Monat zählen. Außerdem benötigen Sie in diesem Fall keine Unterscheidungsmerkmale, wenn Sie eine Gruppe ausführen. IMO distinct sollte nur verwendet werden, wenn Sie doppelte Daten in einer Ergebnismenge haben, die Sie wirklich eliminieren müssen; andernfalls ist bei Verwendung von Aggregation eine Gruppe von alles was Sie brauchen. – xQbert