我正在以下两个表上尝试这两个SQL语句:
SELECT TOP 1
Country
FROM (
SELECT
customer.country,
count(*) as Appointments
FROM
customer.country
GROUP BY
country
ORDER BY
count(*)
) AS AppointmentCount
上面的 SQL 应该通过 COUNT 给出具有最大约会的国家/地区(对于我将使用 ORDER BY DESC(
表的图像
不幸的是,上面的SQL给出了以下错误,但我找不到解决方法:
#1064 - 您的 SQL 语法有误;请查看手册 对应于您的MariaDB服务器版本,以便使用正确的语法 在第 1 行的"1 个国家/地区"附近(选择客户国家/地区,计数(*(">
关于如何对上述 SQL 语句进行 gix 的任何帮助?任何帮助将不胜感激。提前谢谢。
问题是 MSSQL 的TOP
语句。您需要改用LIMIT
。试试这个:
SELECT
Country
FROM (
SELECT
customer.country,
count(*) as Appointments
FROM
customer
GROUP BY
country
) AS AppointmentCount
ORDER BY
Appointments DESC
LIMIT 1
小问题。您需要修复FROM
子句。即 customer.country
不是一张桌子。这将是正确的:
FROM
customer
此外,TOP
与子查询并不真正兼容。幸运的是,您不需要子查询:
SELECT
TOP 1 customer.country
FROM
customer
GROUP BY
country
ORDER BY
count(*)