问个 group by 问题

liuchanghu 2005-07-26 04:49:57
假设我的MYSQL数据库中有一个表中有如下一些数据:
---------------------------------------------
id brand
1 ibm
2 ibm
3 apple
4 apple
5 microsoft
---------------------------------------------
我想用一条语句求出如下的结果:
--------------------------------------------
1 ibm
3 apple
5 microsoft
-------------------------------------------
用如下方法可以实现:
SELECT id,brand FROM TABLE GROUP BY brank
可是我现在想要其按 id desc ,不知应如何写?
...全文
102 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuchanghu 2005-07-27
  • 打赏
  • 举报
回复
hbhbhbhbhb1021(天外水火(才学JAVA,郁闷)) ( ) 信誉:100
的也报错,其他都是错的。其他的查出所有 brand ,我只要显示一个 brand

You have an error in your SQL syntax near 'select min(id) f
xiaopar 2005-07-27
  • 打赏
  • 举报
回复
是啊,group by brand order by id desc就可以了啊,你想太复杂了吧
fp2003 2005-07-27
  • 打赏
  • 举报
回复
保证你所图示的结构符合你所用的实际结构
如果按你图示结果
SELECT id,brand FROM TABLE GROUP BY brand order by id asc 完全可以实现
如果按你这种说法:'可是我现在想要其按 id desc '
SELECT id,brand FROM TABLE GROUP BY brand order by id desc 完全可以实现
Jzealot 2005-07-26
  • 打赏
  • 举报
回复
回复人: hbhbhbhbhb1021(天外水火(才学JAVA,郁闷)) ( ) 信誉:100
------------------
正解!
pizi611 2005-07-26
  • 打赏
  • 举报
回复
select distinct(brand),id from 表名
pizi611 2005-07-26
  • 打赏
  • 举报
回复
select distinct(brand) from 表名
fp2003 2005-07-26
  • 打赏
  • 举报
回复
SELECT id,brand FROM TABLE GROUP BY brand order by id desc
hbhbhbhbhb1021 2005-07-26
  • 打赏
  • 举报
回复
假设表名为a,数据库为oracle
select * from a a1 where id=(select min(id) from a a2 where a2.brand=a1.brand)
order by a1.id desc
oracle里还有另外一种方法更好的,是一个关键字
sql server 的话设表的别名要用as
select * from a as a1 where id=(select min(id) from a as a2 where a2.brand=a1.brand)
order by a1.id desc

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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