【发布时间】:2018-06-19 12:32:20
【问题描述】:
我正在编写需要三列的 SQL 查询。其中之一是 COUNT,它是多个子查询的结果。我在 FROM.. 行收到错误“SQL 命令未正确结束”。我想这是一个语法错误,与上面的 COUNT 部分有关。我可以就我做错的事情寻求帮助吗?
SELECT STUDENTS.NAME AS NAME,
ADDRESS.CITY AS CITY,
COUNT(*) AS MY_COUNT FROM (SELECT MYSTATE FROM SOME_TABLE
WHERE SOME_ATTRIBUTE IN
(SELECT SUBQUERY_2 =
(SUBQUERY_3)))
FROM MYSCHEMA.ADDRESS ADDRESS --Error: SQL command not properly ended
INNER JOIN SCHEMA.STUDENTS STUDENTS
ON ADDRESS.ID=STUDENTS.ID
GROUP BY STUDENTS.NAME, STUDENTS.CITY
【问题讨论】:
-
您通常按您选择的列进行分组,除了那些作为设置函数的参数的列。
-
呃,你有两个
FROMs:FROM (SELECT MYSTATE ...和FROM MYSCHEMA.ADDRESS ...。必须只有一个FROM子句。这就是为什么在第二个FROM子句中出现错误的原因。 -
在您的查询中,有两个 From 这就是为什么您在第二个 From 子句中出现错误的原因。
-
谢谢,@KavalPatel,@sticky 位。当必须是子查询的结果时,收集
MY_COUNT的正确方法是什么? -
@zimmer,请检查我是否发布了答案,让我知道您是否会得到答案。