SQL 查近似值问题。。。。。。。。。。。。。。。。。。要长。。。。。。。。。。。。。。。。。。。。

kkkkkkmn 2010-08-30 01:36:53
我的数据库里 加入有表 table1
字段是 name dob mothername
现在我想 查名字类似的
就把所有的人查出来 且相似的排序在一起

不知道说明白了 没有
注意不是查 where name like ...
而是没有条件 like什么
就是所有人 几个人名字类似 排序在一起而已
...全文
254 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
moneyNUMBER_1 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 kkkkkkmn 的回复:]
其实页面上有几个checkbox 一个是名字
一个是生日
假如点击名字 就是把所有人查出来 且名字近似的放在一起
加入点击生日 就是把所有人查出来 且生日近似的放在一起
[/Quote]
如果想以当前日期为基础的 where 生日>=当前日期
生日的还好说用order by 生日 或 order by 生日 desc

据我读题啊 "名字相似"的应该是查同音字排序吧! 本人笨只能理解到此
kkkkkkmn 2010-08-31
  • 打赏
  • 举报
回复
自己已解决
SELECT FirstName,LastName,DOB,Patient.PatientId FROM Patient WHERE FirstName IN(SELECT FirstName FROM Patient GROUP BY FirstName HAVING count(FirstName)>1)ORDER BY FirstName
大家辛苦
真TMD想给自己分
wuyq11 2010-08-30
  • 打赏
  • 举报
回复
开启全文索引和创建全文索引目录
exec sp_fulltext_database
exec sp_fulltext_table
SELECT * FROM Tb WHERE CONTAINS(tbname,'')

SQL中可以利用几个函数来查找相似的字符
DIFFERENCE/SOUNDEX
PATINDEX/CHARINDEX
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 yu_xiaot 的回复:]
引用 9 楼 kkkkkkmn 的回复:

引用 7 楼 changjiangzhibin 的回复:
SQL code

--没太看明白,猜一下
selct * from table1 order by [name]

不是排序啦!
假如 我的表[name]里有 张三 张小三
李四 李小四 小五
那么我查出来的会是

张三
张小三
李四
李小四


意思明白了……
[/Quote]
可能我聚的例子有问题
yu_xiaot 2010-08-30
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 kkkkkkmn 的回复:]

引用 7 楼 changjiangzhibin 的回复:
SQL code

--没太看明白,猜一下
selct * from table1 order by [name]

不是排序啦!
假如 我的表[name]里有 张三 张小三
李四 李小四 小五
那么我查出来的会是

张三
张小三
李四
李小四
[/Quote]

意思明白了,但是你不觉得这个需求是不合理的吗?
简单问你一个:你觉得 张小三 跟 张三 更近还是跟 张小 更近还是跟 小三 更近?
rwm5366745 2010-08-30
  • 打赏
  • 举报
回复
你这不就是排序吗
按名字排序显示
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
这回好了吧!!!
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
大Y 2010-08-30
  • 打赏
  • 举报
回复
图显示不出来撒
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
要得就是这样的效果
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
我有图片大家一看就明白了
rwm5366745 2010-08-30
  • 打赏
  • 举报
回复
排序应该能实现吧 .......
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 beatles_the 的回复:]
排序是不是类似的就在一起了.
[/Quote]
应该是 但是我的需求是 假如这个数据没有和他一样的 那么就不查他了
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 changjiangzhibin 的回复:]
SQL code

--没太看明白,猜一下
selct * from table1 order by [name]
[/Quote]
不是排序啦!
假如 我的表[name]里有 张三 张小三
李四 李小四 小五
那么我查出来的会是

张三
张小三
李四
李小四


MingInCode 2010-08-30
  • 打赏
  • 举报
回复
排序是不是类似的就在一起了.
changjiangzhibin 2010-08-30
  • 打赏
  • 举报
回复

--没太看明白,猜一下
selct * from table1 order by [name]
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 jayinit 的回复:]
不用like 怎么判断名字是否相似呢
[/Quote]
就是在所有人中 找他们之间名字类似的!!!
明白了吗
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
其实页面上有几个checkbox 一个是名字
一个是生日
假如点击名字 就是把所有人查出来 且名字近似的放在一起
加入点击生日 就是把所有人查出来 且生日近似的放在一起
  • 打赏
  • 举报
回复
不用like 怎么判断名字是否相似呢
kkkkkkmn 2010-08-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hongleidy5000 的回复:]
LZ 什么意思不明白,错字多撒

而是没有条件 like什么 啥意思
[/Quote]
就是一个表 我想查出来的效果是
名字类似的 排在一起
加载更多回复(1)

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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