【发布时间】:2020-06-02 19:36:19
【问题描述】:
我正在尝试使用嵌套查询方法为 mySQL 数据库构建查询时查询,但未能正确生成输出。我能够将我的表导入 Microsoft Access 并构建 Query1,然后在 Query1 上构建 Query2 以获得我正在寻找的正确输出,所以我觉得我已经接近了,我只是无法获得正确的语法来获取我正在寻找使用 mySQL 查询方法的输出。
Query1,这是来自 Access 的 Query1 的 SQL 语句。
SELECT DISTINCT MediaBuys.DistrictID, MediaBuys.SpenderID, MediaBuys.PG, MediaBuys.SupportType, MediaBuys.PriSupportType
FROM MediaBuys
WHERE MediaBuys.PG ="P";
Query2,如果我如上所述在 Access 中构建了 Query1,并且我在 Access 中将这个 SQL 语句作为一个单独的查询运行,我可以生成我正在寻找的输出。
SELECT Query1.DistrictID, Query1.SpenderID, Query1.PG, Query1.SupportType, Query1.PriSupportType, Count(Query1.SupportType) AS CountOfSupportType
FROM Query1 INNER JOIN Query1 AS Query1_1 ON Query1.PG = Query1_1.PG AND Query1.SpenderID = Query1_1.SpenderID AND Query1.DistrictID = Query1_1.DistrictID
GROUP BY Query1.DistrictID, Query1.SpenderID, Query1.PG, Query1.SupportType, Query1.PriSupportType
HAVING Count(Query1.SupportType) > 1;
我希望能够从 mySQL 中的查询产生相同的输出。由于我有这两个查询的 SQL 语句,我觉得这应该是可行的,我尝试以多种不同的方式构建嵌套查询,但每次尝试都失败,看来我无法组合正确的语法。我收到的最常见错误是“错误代码:1146。表 'Query1' 不存在”。
这在 mySQL 中是否可行,如果可以,任何人都可以帮助我使用正确的语法吗?
【问题讨论】:
标签: mysql