作者dxc320 (爱翻滚的狗)
看板Database
标题[SQL ]这种问题要怎麽处理?
时间Sun Feb 8 02:40:34 2009
最近公司做一个活动,要让使用者登入网站填问卷跟联络资料,
然後每月从这些资料中取出一位名单当中奖名单送礼物,
这两天观察了一下DB(MS的DB),发现如果要是某位使用者,一直登入留资料的话,
这样DB里他的资料就会变多,这样他的中奖机率也会变高,
某种程度这是不公平的,而我的想法是,用distinct的方式把相同的资料给滤掉,
相同的只留一笔,但现在问题来了,我select出来的资料只有name的部分,但是
我打算用该笔资料的序号(主键)来做random的操作,要怎麽办?
SQL语法:
select distinct name from xxx;
↑这样一来就是只有一堆没有重覆姓名的姓名名单,
name
=======
阿狗
阿猫
Keroro
.......
我要怎麽写才能写出
ID NAME
== =====
1 阿狗
2 阿猫
3 Keroro
不知道大家都是怎麽处理这种问题的?
大家来讨论一下吧!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.70.118
1F:推 grence:会员喔.. select min(id), name from table group by name 02/08 02:53
2F:推 Antzzz:没有异人同名问题? 02/08 20:44
3F:推 eggeggss:group by後insert到pk设为identity的temp table 02/10 22:01
4F:推 hhharley:一个序号只会对应一个name吗?还是多个序号对到一个name? 02/14 13:26