请教大神们关于取出重复问题

themoqiao_x 2015-02-09 02:41:15
如题:
ID NAME
1 AAA
2 BBB
3 CCC

我想要得到的结果是: 比如 选择ID=1. 出现NAME= AAA一次
选择ID=2 出现:
ID NAME
2 BBB
2 BBB

选择ID=3 出现:
ID NAME
3 CCC
3 CCC
3 CCC
...全文
114 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2015-02-10
  • 打赏
  • 举报
回复
假如id=2记录缺少,选择ID=3时期望结果是3条还是2条?
2条应该用我#2的。
themoqiao_x 2015-02-09
  • 打赏
  • 举报
回复
引用 1 楼 ky_min 的回复:
DECLARE @ID INT
SET @ID=2
--选择ID=2
SELECT T2.* FROM
	master..spt_values T1,
	(SELECT * FROM TB WHERE ID=@ID)T2
WHERE T1.type='P'AND T1.number<@ID
--出现:
--ID NAME
--2 BBB
--2 BBB
引用 楼主 themoqiao_x 的回复:
如题: ID NAME 1 AAA 2 BBB 3 CCC 我想要得到的结果是: 比如 选择ID=1. 出现NAME= AAA一次 选择ID=2 出现: ID NAME 2 BBB 2 BBB 选择ID=3 出现: ID NAME 3 CCC 3 CCC 3 CCC
引用 1 楼 ky_min 的回复:
DECLARE @ID INT
SET @ID=2
--选择ID=2
SELECT T2.* FROM
	master..spt_values T1,
	(SELECT * FROM TB WHERE ID=@ID)T2
WHERE T1.type='P'AND T1.number<@ID
--出现:
--ID NAME
--2 BBB
--2 BBB
非常感谢让我学到新的知识了,比我自己原本的思路要简单
Tiger_Zhao 2015-02-09
  • 打赏
  • 举报
回复
SELECT t.*
FROM table1 t
JOIN table1 t0
ON t0.ID <= t.ID
WHERE t.ID = 3
还在加载中灬 2015-02-09
  • 打赏
  • 举报
回复
DECLARE @ID INT
SET @ID=2
--选择ID=2
SELECT T2.* FROM
	master..spt_values T1,
	(SELECT * FROM TB WHERE ID=@ID)T2
WHERE T1.type='P'AND T1.number<@ID
--出现:
--ID NAME
--2 BBB
--2 BBB

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧