-4
请让我知道,如果有任何语法错误,因为,按照我的理解,查询是完美的:有没有语法错误,因为,按照我的理解,查询是完美
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
显然,你需要与你的DBMS(MySQL的)的讨论,因为它与你不同意你的SQL的完善。总的来说,我怀疑数据库管理系统是正确的,你的完美主张被夸大了。您使用的是哪个版本的MySQL? –
这是Microsoft SQL SERVER语法不是mysql的。 Mysql没有row_number()over()构造 –
显然你的理解是不正确的。你应该努力,因为理解在大多数时候都很重要。 –