Sql Distinct Query

时间:2011-02-11 11:37:35

标签: sql distinct

我有某些字段,比如

Id
ModuleId
ModuleName
TotalAmount
Category

在我的情况下,只有Id和ModuleId的值用于更改。
但是我希望从这个表中获得具有唯一或不同ModuleId的完整记录,以及那个(?)正在发生的第一行。

我尝试了不同但它失败了因为Id的值也发生了变化。 非常感谢,如果回答,因为我不能继续我的查询。

2 个答案:

答案 0 :(得分:2)

应该适用于大多数DBMS

select Id, ModuleId, ModuleName, TotalAmount, Category
from tbl
where id in 
(
select min(id)
from tbl
group by moduleid
)

答案 1 :(得分:0)

您可以使用总和函数,例如sum,avg,max,min。

select id, ModuleId, max(modulename), avg(TotalAmount), max(Category)
from table
group by id, ModuleId