求一条SQL语句,请各位帮帮忙

xieliping 2007-03-25 03:14:37
我有两个表:
(1)Dv_user (2)Bu_wenziindex
userid int; id int;
username nvarvhar(50); username nvarchar(50);
num int userid int

num是计算表2中每个username的发帖数量,我现在想显示每个不同用户提交的
最后1条数据,并将最后10位用户的username显示出来.
...全文
286 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovebaby 2007-03-28
  • 打赏
  • 举报
回复
你的Sql语句呢,说来听听?学习学习
xieliping 2007-03-28
  • 打赏
  • 举报
回复
我查的是Bu_wenziindex 比xiaojie_cp() 要简单点,但是xiaojie_cp() 的这个句子,也算也的不错吧.
loucc 2007-03-28
  • 打赏
  • 举报
回复
哈哈,这个不能吧,你不会搜Bu_wenziindex表啊,COUNT(*) group by 不就出来啦
xieliping 2007-03-28
  • 打赏
  • 举报
回复
这个问题已经解决了,xiaojie_cp() 和我想的是一样的,也可以实现,上面的各位,虽然你们没有
说出真确的解决方法,但是还是要谢谢你们,现在给分了.
lovebaby 2007-03-27
  • 打赏
  • 举报
回复
试一下,没测试,大致是这个思路吧
所有用户的不重贴子
SELECT wenziid,wenzititle,wenziaddress,wenzidate,username,userid FROM Bu_wenziindex INNER JOIN (SELECT DISTINCT(username) AS dist_name,MAX(wenzidate) AS max_time FROM Bu_wenziindex GROUP BY username) AS seartable ON seartable.dist_name = Bu_wenziindex.username AND seartable.max_time = Bu_wenziindex.wenzidate
xieliping 2007-03-27
  • 打赏
  • 举报
回复
我现在想得到Bu_wenziindex 中最后十个用户提交的最后一个帖子,这十个用户可能在这个表中提交了多个帖子,我要的是按照时间排序的最后一个帖子,如果在这个表中最后十个帖子都是同一个用户提交的话,那只取他提交的最后那一个,其他九个再在BU_wenziindex中找按时间排序最后提交的用户的最后那一个帖子.
xieliping 2007-03-27
  • 打赏
  • 举报
回复
Bu_wenziindex有这些字段 在DV_user中就只有三个字段个Bu_wenziindex相关
wenziid int userid int,username nvarchar,num int
wenzititle nvarchar
wenziaddress nvarchar
wenzidate datetime
username nvarchar
userid int
xieliping 2007-03-27
  • 打赏
  • 举报
回复
呵呵,不好意思,我昨天机子不能上网了,现在来看,有这么多高手帮我解答,是这样的,我根据jingxiaoping()的运行会出错,您的句子好象写错了点,order by后面接的字段必须在distinct中也指出,还有就是top也用错了地方,应该放在distinct后面.
lovebaby 2007-03-26
  • 打赏
  • 举报
回复
字打错了:如何判断最后十条?
lovebaby 2007-03-26
  • 打赏
  • 举报
回复
如果判断最后十条?应该还有个时间的相关字段吧。把字段打全,我帮你想想。有点意思
xieliping 2007-03-26
  • 打赏
  • 举报
回复
还是不对,前面10条出来的有用户的多条帖子,我是想将两个表结合到一起,得到Bu_wenziindex表中10条帖子,这10条帖子必须是最后10个用户分别提交的最后一条帖子.
www_7di_net 2007-03-26
  • 打赏
  • 举报
回复
select top 提取数据的个数 存储文章的表.文章标题列 from 存储文章的表 where 存储文章的表.发帖人id=Bu_wenziindex.id

另外一个问题类似
xieliping 2007-03-26
  • 打赏
  • 举报
回复
有哪位大侠能帮我看看吗
kittywrl 2007-03-26
  • 打赏
  • 举报
回复
呵呵 我不是发问者 发问者不知跑那去了,
无语~~~`
jingxiaoping 2007-03-26
  • 打赏
  • 举报
回复
可以通过。不过里面的b.id应该改为id,嘿嘿,我又多手了。
kittywrl 2007-03-26
  • 打赏
  • 举报
回复
sql="select id from bu_wenziindex where id in (select top 1 a.id from bu_wenziindex as a where a.id=b.id order by id desc)"
这个SQL通不过吧 order by id desc 能放里面吗?
jingxiaoping 2007-03-26
  • 打赏
  • 举报
回复
错,看来需要两条SQL

最后10位用户username显示出来

sql="select top 10 distinct a.username from dv_user as a,bu_wenziindex as b where a.userid=b.userid order by num"

如果bu_wenziindex的id为不重复、自增量的状态下

sql="select id from bu_wenziindex where id in (select top 1 a.id from bu_wenziindex as a where a.id=b.id order by id desc)"

不过还是感觉你写的字段太少了。
kittywrl 2007-03-26
  • 打赏
  • 举报
回复
是不是哦 说来听听
jingxiaoping 2007-03-26
  • 打赏
  • 举报
回复
一个SQL就可以搞定,嘿嘿。
loucc 2007-03-26
  • 打赏
  • 举报
回复
哈哈,这个好像不难吧,用COUNT(*)再GROUP BY
加载更多回复(7)

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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