SQL查询 字段值相似的语句,求指教啊

单色数据 发布于 2013/12/16 12:47
阅读 2K+
收藏 0
SQL

表A有字段 batch   表B也有字段batch  都是nvachar类型。

怎么查询出表A和表B中 batch相似的结果?

select *

from a,b

where a.batch like b.batch 是没有结果集的。但事实上A、B表里有相似的batch值。求指教啊

加载中
0
beyondforever68
beyondforever68
嘈点有点多啊
0
xdev
xdev

b.batch前后加通配附%

这样还不够,还得把多个或者一个空格替换为%

这样还不够,b.batch字段值包含a.batch的值是查询不到结果的,而且性能极低,使用全文检索速度会好些

这样还不够,最好的解决方法是吧a.batch和b.batch的值拿出来,使用字符串相似性算法来实现

0
hnynes
hnynes

select * from a,b where a.batch like b.batch

-------------------

个人觉得这个问题还是比较明显的,主要原因就是要理解like在这里的使用方式,不说两个表,一个普通的表,你用一个like,却没有给出相应的通配符,得出的结果可能与你想要的结果也是不同的.

你这里给两个字段,其实跟上面的这个就是一样的场景.

返回顶部
顶部