mysql - 一起使用 'GROUP BY' 和 'WHERE ... IN' 的 mySQL 命令出错

标签 mysql sql

我有一个包含以下列的表:DATE、TICKER 和 ID。 本质上,我试图用下面的代码做的是选择所有代码及其相应的 ID(它可以有多个 ID)。但是,在表中,有多个条目,代码可以具有相同的 ID,但属于不同的日期,因此在这种情况下,我选择日期最小的 ID。

SELECT 
       MIN(DATE), 
       TICKER, 
       ID 
FROM Names 
GROUP BY 
        TICKER, 
        ID 
WHERE TICKER IN ('A', 'B')

现在,当我独立尝试这些命令时,它起作用了,但我相信当我将 GROUP BYWHERE IN 命令组合在一起时出现问题,因为我得到语法错误。

如果有任何不清楚的地方,请告诉我,我会尽力澄清。

最佳答案

WHERE 子句出现在 GROUP BY 子句之前

SELECT MIN(DATE), TICKER, ID 
FROM Names 
WHERE TICKER IN ('A', 'B')
GROUP BY TICKER, ID 

关于mysql - 一起使用 'GROUP BY' 和 'WHERE ... IN' 的 mySQL 命令出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30409051/

相关文章:

mysql - VS2010无法添加新的MySQL数据连接

php - php中具有相同输入名称的多次插入

mysql - 纬度和经度,2 个索引还是 1 个复合索引?

mysql - 如何将 MySQL 'LIKE' 应用于查询中指定的列?

c++ - 无法将数据插入 SQL Server 数据库 ODBC C++

mysql - 创建mysql存储过程时出现1193错误

java - 如何在 Hypersql 数据库(HSQLDB)中选择多列但仅按一列分组?

mysql - SQL 查询在特定日期不起作用

mysql - 使用组条件获取查询中的总行数

sql - 为什么 SQL 语句 "select * from gifts INNER JOIN sentgifts using (giftID);"中的 () 是必须的?