【发布时间】:2014-11-10 17:40:04
【问题描述】:
嗨,我有一个包含 6 列的表,其中有一个名为 user_id 的列,它在表中出现了很多次,还有一个列,即笔记本电脑,它引用了用户为某些操作带来的笔记本电脑。这在表中也出现了很多次。
ID DATE LAPTOP USER_ID
1 1/1/2014 Acer 10
2 1/1/2014 Toshiba 2
3 1/1/2014 HP 5
4 1/1/2014 Acer 5
5 1/1/2014 Toshiba 5
6 1/1/2014 HP 2
7 2/1/2014 Lenovo 2
8 2/1/2014 Acer 10
9 2/1/2014 HP 2
10 2/1/2014 HP 5
我需要为每个 user_id 选择不同的笔记本电脑出现次数,而不是通常从表中选择不同的出现次数,因此所需的结果是
LAPTOP USER_ID
Acer 10
Toshiba 2
HP 2
Lenovo 2
HP 5
Acer 5
Toshiba 5
到目前为止,我尝试过的一切似乎都与预期的结果相去甚远
【问题讨论】:
-
你能告诉我们你试过的SQL吗?
-
DISTINCT和CONCAT可以是一个好的开始。 -
不会
select distinct laptop, user_id from table给你想要的结果吗? -
这正是您会得到的,笔记本电脑和 user_id 的不同组合。见sqlfiddle.com/#!2/340bc6/2
-
@nikolas jpw 的解决方案也可以,它会选择
laptop, user_id的不同组合