使用sql剔除重复选项

 要修改以前那个项目 必须排序 我的解决办法是把所有的取出来放到动态数组里面 然后操作动态数组 把重复项剔除 因为动态数组remove了一个后 元素个数就变了 这样就会数组越界 只能在用另一个arraylist了 效率不高 我是用这种办法 已经提交了 没有什么问题 我在想如果直接使用sql直接剔出重复项这样要好一点。


    表tt结构

ec_id ec_name ec_title ec_content
1     民生    饮食     成都火锅多
2     民生    人文     天府之国
3     体育    篮球     姚明 火箭
4     体育    足球     中国0:1泰国
5     国际    世界排名 中国世界排名15
6     娱乐    蜘蛛侠3  首映式
7     民生    吃饭     重庆火锅
要取出
1 民生
3 体育
4 国际
6 娱乐
必须按照 ec_id排序

    我开始使用select distinct ec_name from tt order by ec_id, 这是每个人的本能反应,但是实际情况是错误的,因为如果用了distinct 那么ec_id必须出现在选择列中, 要不然肯定要报错,如果不用distinct,order by 后面的字段不必在选择列中。

    只能用这种办法了: select min(ec_id) as m, ec_name from tt group by ec_name order by m. 实际上这个问题就是每次都在取每个不同的ec_name的最小Id。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值