2我有一张重复项目表,我从左边的连接处完成了这张桌子.- 让我们说这个表别名是“piked”
ID Product PickedBY
1 Basket Josh
1 Basket Jessica
1 Basket Josh
1 Basket Mike
1 Basket Mike
2 Seat Alan
3 Computer Jessica
4 Mouse Josh
4 Mouse Mike
4 Mouse Jessica
我希望将相等的ID限制为2.我该怎么做?所以,如果我只列出ids,结果将看起来是1,1,2,3,4,4。
由于
答案 0 :(得分:0)
你的问题对我来说没有意义,这让我想知道你想通过这样的查询实现什么,但你可以尝试对结果进行分组:
select id, count(*)
from piked
group by id
这不完全是你问的,但是你可以通过查看结果的第二列来判断id是否有重复。结果将是
1,5
2,1
3,1
4,3
答案 1 :(得分:0)
这应该可以解决问题:
SELECT ID, Product, PickedBy FROM (
SELECT
IF(@prev != q.ID, @rownum:=1, @rownum:=@rownum+1) as rownumber, @prev:=q.ID, q.*
FROM (
SELECT
ID, Product, PickedBy
FROM piked
, (SELECT @rownum:=0, @prev:=0) r
ORDER BY ID
)q
)asdf
WHERE asdf.rownumber <= 2