标题:请找出“姓名”中有二个字相同的人的记录
只看楼主
gotopx
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-12-29
结帖率:50%
已结贴  问题点数:20 回复次数:1 
请找出“姓名”中有二个字相同的人的记录
序号 姓名 金额
1 李国民 10000
2 黄亚林 11000
3 李国中 3000
4 赵福喜 5000
5 黄亚南 8000
6 谢振民 13000
7 于来新 600
8 于来达 6540
9 赵寿山 7750
10 杨菊英 9630
11 杨文英 2500
12 陈东生 13000
13 陈卫明 6600


请找出“姓名”中有二个字相同的人的记录。
如李国民与李国中
 杨菊英与杨文英

条件是姓氏相同,后面的至少有1个字相同
 请帮忙写一个SQL查询语句
搜索更多相关主题的帖子: 姓名 李国 
2012-06-24 14:43
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
得分:14 
这个问题挺有趣的,试一下:

假定楼主所说的表名为:abc
select a.序号,a.姓名,a.金额,b.序号,b.姓名,b.金额
    from abc a inner join abc b
        on a.序号<b.序号
        and substring(a.姓名,1,1)=substring(b.姓名,1,1)
        and (charindex(substring(a.姓名,2,1),b.姓名,2)>0 or charindex(substring(a.姓名,3,1), b.姓名,2)>0)

(方法不怎么高明,运行效率应该不高。抛砖引玉吧!)

做自己喜欢的事!
2012-06-26 00:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-372143-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.570927 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved