我有一个名为X的列的表.X包含从0到99的数字。但是有重复项(例如0有多次!)
现在我需要一个查询,给出0,1,2,3 ... 99的任何行,这意味着我在一个查询中得到100个结果,但我不关心x == 0中的哪一个, x == 1 ......我明白了,但只有其中一个!
sql中有这样的东西吗?
答案 0 :(得分:2)
select distinct x
from your_table
要获得完整记录,您可以按X
列进行分组。但是你必须告诉DB你想要的其他列的重复值是什么。
select x, min(y) as y
from your_table
group by x
如果按X
构建组,则此值将是不同的。对于其他列,您需要一个所谓的聚合函数,例如min()
。这告诉数据库选择每个Y
组的最小X
。