在 Babelfish 中使用全文搜索
从版本 4.0.0 开始,Babelfish 为全文搜索(FTS)提供有限支持。FTS 是关系数据库中的一项强大功能,可实现对文本密集型数据的高效搜索和索引。借助该功能,用户能够执行复杂的文本搜索并快速检索相关结果。FTS 对于处理大量文本数据的应用程序特别有价值,例如内容管理系统、电子商务平台和文档归档。
了解 Babelfish 全文搜索支持的功能
Babelfish 支持以下全文搜索功能:
-
CONTAINS 子句:
对 CONTAINS 子句的基本支持。
CONTAINS ( { column_name } , '<contains_search_condition>' )
注意
目前,仅支持英语。
-
全面处理和翻译
simple_term
搜索字符串。
-
FULLTEXT INDEX
子句:仅支持
CREATE FULLTEXT INDEX ON table_name(column_name [...n]) KEY INDEX index_name
语句。-
支持完整
DROP FULLTEXT INDEX
语句。
注意
为了重新对全文索引编制索引,您需要删除全文索引,并在同一列上创建一个新的全文索引。
-
搜索条件中的特殊字符:
Babelfish 可确保有效处理搜索字符串中出现的各个特殊字符。
注意
虽然 Babelfish 现在可以识别搜索字符串中的特殊字符,但必须认识到,与使用 T-SQL 获得的结果相比,使用 Babelfish 获得的结果可能会有所不同。
-
列名中的表别名:
借助表别名支持,用户可以为全文搜索创建更简洁易读的 SQL 查询。
Babelfish 全文搜索限制
目前,Babelfish 不支持
CONTAINS
子句的以下选项。不支持特殊字符和英语以外的语言。您将收到有关不支持的字符和语言的通用错误消息
Full-text search conditions with special characters or languages other than English are not currently supported in Babelfish
多列,比如
column_list
PROPERTY 属性
prefix_term
、generation_term
、generic_proximity_term
、custom_proximity_term
和weighted_term
不支持布尔运算符,如果使用该运算符,将收到以下错误消息:
boolean operators not supported
不支持带点的标识符名称。
目前,Babelfish 不支持
CREATE FULLTEXT INDEX
子句的以下选项。[ TYPE COLUMN type_column_name ]
[ LANGUAGE language_term ]
[ STATISTICAL_SEMANTICS ]
目录文件组选项
with 选项
不支持创建全文目录。创建全文索引不需要全文目录。
CREATE FULLTEXT INDEX
不支持带点的标识符名称。Babelfish 目前不支持在搜索字符串中使用连续的特殊字符。否则,您将收到以下错误消息:
Consecutive special characters in the full-text search condition are not currently supported in Babelfish