-4
Bitte lassen Sie mich wissen, ob es einen Syntaxfehler ist, weil, wie pro mein Verständnis, die Abfrage ist perfekt:Gibt es einen Syntaxfehler, weil, wie pro mein Verständnis, die Abfrage ist perfekt
mysql> SELECT Cust_Id,Plan_Id FROM(SELECT Cust_Id,Plan_Id,ROW_NUMBER() OVER (PARTITION BY Cust_Id ORDER BY cnt DESC) AS RN FROM(SELECT Cust_Id,Plan_Id,COUNT(1) as cnt FROM customer GROUP BY (Cust_Id,Plan_Id))) WHERE RN =1;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual
that corresponds to your MySQL server version for the right syntax to use
near '(PARTITION BY Cust_Id ORDER BY cnt DESC) AS RN FROM(SELECT Cust_Id,Plan_Id,COUNT'
at line 1
eindeutig neu zu schreiben, müssen Sie eine Diskussion mit Ihrem DBMS (MySQL) haben, weil sie mit Ihnen über die Perfektion des SQL nicht einverstanden ist. Insgesamt vermute ich, dass das DBMS korrekt ist und Ihre Ansprüche an Perfektion übertrieben sind. Welche Version von MySQL verwenden Sie? –
Dies ist Microsoft SQL SERVER Syntax nicht mysql. Mysql hat nicht die row_number() over() Konstrukt –
Anscheinend ist Ihr Verständnis falsch. Du solltest daran arbeiten, denn das Verständnis ist meistens wichtig. –