Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server--高效字符串包含非常大的表_Sql Server_Sql Server 2008_Tsql - Fatal编程技术网

Sql server SQL Server--高效字符串包含非常大的表

Sql server SQL Server--高效字符串包含非常大的表,sql-server,sql-server-2008,tsql,Sql Server,Sql Server 2008,Tsql,我有一个表,目前包含1000万条记录 其中一列是nvarchar(4000)类型的SourceText 我需要一种非常有效的方法来搜索SourceText,以查看它是否包含另一个字符串 我对表结构有极大的灵活性——我可以修改insert过程,并使用其他索引更好的表来跟踪内容。一种想法是按单词标记SourceText并将单词存储在索引表中,然后使用映射表映射到主表。问题是,SourceText列可以是任何语言,并且总是有关于偏执等的规则。例如,在英语中,如果我使用“”作为分隔符进行标记,我仍然会得

我有一个表,目前包含1000万条记录

其中一列是
nvarchar(4000)
类型的
SourceText

我需要一种非常有效的方法来搜索SourceText,以查看它是否包含另一个字符串

我对表结构有极大的灵活性——我可以修改insert过程,并使用其他索引更好的表来跟踪内容。一种想法是按单词标记SourceText并将单词存储在索引表中,然后使用映射表映射到主表。问题是,
SourceText
列可以是任何语言,并且总是有关于偏执等的规则。例如,在英语中,如果我使用“”作为分隔符进行标记,我仍然会得到类似
(Where
的内容,而不是
Where
,这是有问题的


有什么想法吗?

在没有可选功能和强大功能的情况下实现快速全文搜索将是一个非常有趣和具有挑战性的项目(我认为这是可能的)。-)

您考虑过全文搜索吗?这看起来很有趣;我要试一试——看看它是否足够快应该很有趣。。。