求一个SQL语句,要求过滤掉重复的记录,谢谢!
表tz是主表,用来记录帖子。id字段既是主键也是标识,title是标题;表cmt是从表,用来记录帖子的评论,字段如下:idtieziIDcontentuidtime(id...
表tz是主表,用来记录帖子。id字段既是主键也是标识,title是标题;
表cmt是从表,用来记录帖子的评论,字段如下:
id tieziID content uid time(id主键标识、tieziID从属帖子、内容、用户ID、时间)
现在,要在个人中心页面建立一个功能,让用户查看自己评论了哪些帖子
我的SQL语句如下:
string sql="";
sql="select tz.id,tz.title from tz,cmt where cmt.uid='"+当前用户ID+"'" and cmt.tieziID=tz.id;
因为用户可以给同一篇帖子多次回贴,这样查出来的记录就有重复,比如张三给ID编号为100的帖子回复了5次,那么查出来的评论,专是ID为100的帖子,就显示了5行,请问各位大侠,怎么避免重复的记录呢?SQL语句能实现吗?
谢谢! 展开
表cmt是从表,用来记录帖子的评论,字段如下:
id tieziID content uid time(id主键标识、tieziID从属帖子、内容、用户ID、时间)
现在,要在个人中心页面建立一个功能,让用户查看自己评论了哪些帖子
我的SQL语句如下:
string sql="";
sql="select tz.id,tz.title from tz,cmt where cmt.uid='"+当前用户ID+"'" and cmt.tieziID=tz.id;
因为用户可以给同一篇帖子多次回贴,这样查出来的记录就有重复,比如张三给ID编号为100的帖子回复了5次,那么查出来的评论,专是ID为100的帖子,就显示了5行,请问各位大侠,怎么避免重复的记录呢?SQL语句能实现吗?
谢谢! 展开
展开全部
sql="select distinct (tz.id),tz.title from tz,cmt where cmt.uid='"+当前用户ID+"'" and cmt.tieziID=tz.id;
这行就行了 实际上就是 把贴子的ID 前加个 distintc
作用: 剔除重复语句
这行就行了 实际上就是 把贴子的ID 前加个 distintc
作用: 剔除重复语句
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有多种方法,
方法一,如前面回答的用:
select distinct tz.id,tz.title from ......
或者group by也行,就是原来的写法在最后加上group by tz.id,tz.title
方法二,用存在性:
select tz.id,tz.title from tz
where exists(select * from cmt where cmt.uid=当前用户的ID and
cmt.tieziID=tz.id
我个人更愿意用方法二
方法一,如前面回答的用:
select distinct tz.id,tz.title from ......
或者group by也行,就是原来的写法在最后加上group by tz.id,tz.title
方法二,用存在性:
select tz.id,tz.title from tz
where exists(select * from cmt where cmt.uid=当前用户的ID and
cmt.tieziID=tz.id
我个人更愿意用方法二
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select distinct tz.id,tz.title from tz,cmt where cmt.uid='"+当前用户ID+"'" and cmt.tieziID=tz.id;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select
*
from
table1
group
by
a1,b1
*
from
table1
group
by
a1,b1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
得用 GROUP BY 过滤
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询