怎么样才能在每次查询的时候在 sjid 列每一个重复的内容中随机选一列的内容显示出来?
自己已经试了一上午了,新手,不会啊,求大神帮忙了~
SQL SERVER 2008 求助
相关帖子
-
- 其他回帖
-
luqiao19950804 •作者
好了,自己已经搞定,就算数据量大也没有问题,下面是代码,还是谢谢大家了~
select * from (
select *,row=row_number()over(partition by column oeder by newid())
from table/后面可以跟具体的查询条件/)t
where row=11 回复 -
ephen • • 1 • 1 赞同
你是要每个 sjid 只随机选出一条数据么?
这样的话,可以用存储过程啊。先 select distinct sjid from table ,把值存到一个变量里面再 Loop 循环取出来。
select TOP 1 * FROM table where sjid = :sjid order by newid()
这样行不行?
PS:没接触过 SqlServer,只是个思路……newid 也是刚查到的,不晓得能不能用……
1 回复 -
luqiao19950804 •作者
select * 查询了所有的内容,每一条内容本身是不重复的,但是 sjid 这一列相当于一个类,有很多内容隶属于一个类,要求是把每个类能显示出来,但是类里面的内容只随机显示一条出来。。
- 查看全部回帖
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于