我想选择列a + b并选择列c
的任何不同组合sql基本上是这样的:
SELECT DISTINCT (a, b), c
FROM mytable
返回错误:操作数应包含1列
这甚至可能吗?
答案 0 :(得分:3)
您想要使用group by
代替:
SELECT a, b, c
FROM mytable
group by a, b;
Distinct
适用于所有列,而不仅仅是少数几列。此公式从其中一行返回任意值c
。更典型的是,您可以选择一个值,例如:
SELECT a, b, min(c)
FROM mytable
group by a, b;