求一个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语句能实现吗?
谢谢!
展开
 我来答
aitsv
2009-07-16 · 超过23用户采纳过TA的回答
知道答主
回答量:167
采纳率:0%
帮助的人:91.2万
展开全部
sql="select distinct (tz.id),tz.title from tz,cmt where cmt.uid='"+当前用户ID+"'" and cmt.tieziID=tz.id;

这行就行了 实际上就是 把贴子的ID 前加个 distintc
作用: 剔除重复语句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vwin9
推荐于2016-09-30 · TA获得超过133个赞
知道小有建树答主
回答量:95
采纳率:0%
帮助的人:95.8万
展开全部
有多种方法,
方法一,如前面回答的用:
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

我个人更愿意用方法二
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逍遥隐公子
2009-07-16 · 超过22用户采纳过TA的回答
知道答主
回答量:73
采纳率:0%
帮助的人:58.3万
展开全部
select distinct tz.id,tz.title from tz,cmt where cmt.uid='"+当前用户ID+"'" and cmt.tieziID=tz.id;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
暨慈曾攸
2019-08-01 · TA获得超过3956个赞
知道大有可为答主
回答量:3178
采纳率:31%
帮助的人:213万
展开全部
select
*
from
table1
group
by
a1,b1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zfdztan
2009-07-16
知道答主
回答量:35
采纳率:0%
帮助的人:16.3万
展开全部
得用 GROUP BY 过滤
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式