DISTINCT自动排序的问题

weirdlee 2006-01-24 03:37:56
现有两个字段,一个ID,另一个typeID,ID是自增的主键,typeID是一个分类的序列数,typeID是会重复的,现在我想用distinct列出唯一项,但它会自动排序,我想请问如何让它按ID字段的顺序列出typeID列表呢?
我是这样写的
SELECT DISTINCT([typeID]) FROM (SELECT [typeID] FROM [product] ORDER BY [ID] DESC)
但出来的结果却还是它自动排序的,而不是我想要的按ID的顺序排列的,请问怎么解决这个问题呢?
...全文
1920 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weirdlee 2006-01-26
  • 打赏
  • 举报
回复
谢谢大家的帮助,提出这么多方案,最终我采用了bugchen888(臭虫)的方法,问题终于解决了,感激大家中...
lsqkeke 2006-01-24
  • 打赏
  • 举报
回复
SELECT DISTINCT [typeID] FROM [product]
---------------------------------------
根据执行计划,相当于对typeid进行了Group by操作
自然会排好序

----------------------
但不会按 ID desc 排好序
ReViSion 2006-01-24
  • 打赏
  • 举报
回复
只能用
select typeid from (select id=min(id),Typeid from product group by typeid)a order by a.id desc


select typeid from (select id=max(id),Typeid from product group by typeid)a order by a.id desc
ReViSion 2006-01-24
  • 打赏
  • 举报
回复
SELECT DISTINCT [typeID] FROM [product]
---------------------------------------
根据执行计划,相当于对typeid进行了Group by操作
自然会排好序

vovo2000 2006-01-24
  • 打赏
  • 举报
回复
这样不可以吗?
select distinct tid from @t order by tid asc
bugchen888 2006-01-24
  • 打赏
  • 举报
回复 3
SELECT [typeID]
FROM [product]
GROUP BY [typeID]
ORDER BY MAX([ID]) DESC
lsqkeke 2006-01-24
  • 打赏
  • 举报
回复
如:
select typeid from (select id=min(id),Typeid from product group by typeid)a order by a.id desc
vovo2000 2006-01-24
  • 打赏
  • 举报
回复
楼上正解。搂住写锝这么复杂有什么用意吗?
lsqkeke 2006-01-24
  • 打赏
  • 举报
回复
也不对 你TypeID是重复的,对应的ID有多个
你得指出选出的同一个TypeID是要最小的ID 还是最大的ID
然后再按ID排序 这样才会有序
lsqkeke 2006-01-24
  • 打赏
  • 举报
回复
SELECT DISTINCT [typeID] FROM [product] ORDER BY [ID] DESC

27,581

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧