作者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