0

我有一个mysql表:

id       int
a        varchar
b        varchar
c        varchar
version  int
active   bool

我想通过 a、b 和 c 获取最大版本组,所以我有以下查询来做到这一点:

select a, b, c, max(version) as version from mytbl where active = 1 group by (a, b, c)

但这会返回

Operand should contain 1 column(s)

这里有什么问题?

4

2 回答 2

4

您的 group by 语法错误,应该如下所示:

group by a, b, c
于 2012-10-18T18:36:38.300 回答
1

只需删除分组后的左括号和右括号。应该是

select a, b, c, max(version) as version from mytbl where active = 1 group by a, b, c
于 2012-10-18T18:38:05.780 回答