小编Cel*_*neR的帖子

T-SQL CONTAINS 包含数字和点 (.)

让我们考虑User.Note = 'Version:3.7.21.1'

SELECT * FROM [USER] WHERE CONTAINS(NOTE, '"3.7.2*"')
Run Code Online (Sandbox Code Playgroud)

=> 返回一些东西

SELECT * FROM [USER] WHERE CONTAINS(NOTE, '"3.7*"')
Run Code Online (Sandbox Code Playgroud)

=> 不返回任何内容

如果User.Note = '版本:3.7.21'

SELECT * FROM [USER] WHERE CONTAINS(NOTE, '"3.7*"')
Run Code Online (Sandbox Code Playgroud)

=> 返回一些东西

如果User.Note = '版本:3.72.21'

SELECT * FROM [USER] WHERE CONTAINS(NOTE, '"3.7*"')
Run Code Online (Sandbox Code Playgroud)

=> 不返回任何内容

我不明白它是如何工作的。当我搜索“3.7*”时,它应该总是返回一些内容。

你知道这背后的逻辑是什么吗?

PS:如果我把数字换成字母就没有问题了。

sql t-sql sql-server full-text-search contains

4
推荐指数
1
解决办法
5201
查看次数

标签 统计

contains ×1

full-text-search ×1

sql ×1

sql-server ×1

t-sql ×1