sql server 模糊查询

列名是ID,公司ID,公司名称,姓名.........我现在要用模糊查询查询出公司名称和姓名都重复的查询出来,我现在用的语句只能单独查询出公司名称重复的或者姓名重复的se... 列名是ID,公司ID,公司名称,姓名.........
我现在要用模糊查询查询出公司名称和姓名都重复的查询出来,我现在用的语句只能单独查询出公司名称重复的或者姓名重复的

select 公司ID,公司名称,姓名
from zongbiao
where (公司名称 in
(select 公司名称 from zongbiao group by 公司名称 having count(*) >1))
or(姓名 in (select 公司名称 from zongbiao where 公司名称 like '%
姓名%'))
order by 公司名称
还是查询不出来,而且现在这些答案都查不出来东西
最好能查询出来重复的数据并删除这些重复的数据
我这个数据库中现在有80多万的数据,
展开
 我来答
百度网友2e8d38f40
2010-11-05 · TA获得超过782个赞
知道小有建树答主
回答量:959
采纳率:0%
帮助的人:795万
展开全部
select 公司ID,公司名称,姓名
from zongbiao
where (公司名称 in
(select 公司名称磨世或 from zongbiao group by 公司名称 having count(*) >1))
and (姓名 in (select 姓名 from zongbiao where 姓名 like '%
姓返绝名%'))
order by 公瞎伍司名称
jyl_19
2010-11-09 · TA获得超过1002个赞
知道小有建树答主
回答量:708
采纳率:0%
帮助的人:1049万
展开全部
查询:
select 公司ID,公司名称,姓名
from zongbiao t1
where
(select count(1) from zongbiao where 公司名称=t1.公司名称)>1
or
(select count(1) from zongbiao where 姓名=t1.姓名)>1
删除,重复的全部删含氏除高睁,如果两条记录重复,两条全删除。
delete from zongbiao
where ID in
(select ID from zongbiao t1
where
(select count(1) from zongbiao where 公司名称=t1.公司名称)>1
or
(select count(1) from zongbiao where 姓名=t1.姓名)>1
)
删除重复数据,如果两条记录重复,删一条,留ID小的数据
delete from zongbiao t1
where exists
(select * from zongbiao where 公司名称=t1.公司名称 and id<t1.Id)
or exists
(select * from zongbiao where 姓名=t1.姓名 and id<t1.Id)

语句应该没问题,查不出东西是什么意思,查询超时,还是真的没谈念散有数据,建议检查索引,优化一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hotyxm
2010-11-05 · TA获得超过1028个赞
知道大有可为答主
回答量:1698
采纳率:50%
帮助的人:1190万
展开全部
DELETE FROM zongbiao
WHERE 公差野司ID IN(
select 公司ID
from zongbiao
WHERE 公司名称 IN (select 公司名称 from zongbiao group by 公司祥大名称 having count(*) >1))
UNION
select 公司ID
from zongbiao
WHERE 姓名 in (select 姓名 from zongbiao where 姓名 like '%姓名谨庆竖%')
)

try it
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
asonsoft
2010-11-06 · 超过17用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:28.5万
展开全部
1、得到公司名称重复的记录数:
select distinct 公司名称,count(*) 重复数 from zongbiao group by 公司名称 having count(*)>1
2、得到名称重复的记录数:
select distinct 名称,count(*) 重复数 from zongbiao group by 名称 having count(*)>1
3、通过得到的世态巧重复记录数知道是哪些内容重复,找搜键到公司ID,通过语句:
delete from zongbiao where 公司ID in (3,5,12,45)
删除闭迟即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
raymonlu
2010-11-05 · TA获得超过943个赞
知道小有建树答主
回答量:792
采纳率:0%
帮助的人:762万
展开全部
select 公司ID,公司名歼举唤称,姓名
from zongbiao
where (公司名称 in
(select 公司名称 from zongbiao group by 公答厅司名称 having count(*) >1))
and (姓名 in (select 姓名氏凯 from zongbiao where 姓名 like '%
姓名%' group by 姓名 having count(*) >1))
order by 公司名称
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(9)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式