如何搜索复数和单数

时间:2016-08-24 13:44:41

标签: sql sql-server

我想用"复印机"和"复印机"。 我想在两种情况下都得到相同的结果。可以在sql server中使用吗?

select * from Item where ItemName like '%copiers%'

2 个答案:

答案 0 :(得分:3)

您需要设置Full Text Search

从该页面开始:

  

...查询可以搜索以下任何内容:

     
      
  • 一个或多个特定单词或短语(简单术语)
  •   
  • 单词或短语,其中单词以指定文本(前缀术语)开头
  •   
  • 特定单词的屈折形式(代词)
  •   
  • 靠近另一个单词或短语(近距离术语)的单词或短语
  •   
  • 特定单词(同义词库)的同义形式
  •   
  • 使用加权值的字或短语(加权项)
  •   

我认为"代词"涵盖单数/复数。

答案 1 :(得分:1)

Plural和singular case的可能解决方案是以下两种方式比较数据,

SELECT * FROM Item WHERE ItemName LIKE '%copiers%'  OR 'copiers' LIKE '%'+ItemName+'%'
  
      
  1. 首先比较ItemName LIKE '%copiers%'以检查搜索字符串
  2. 中是否存在ItemName   
  3. 第二次比较'copiers' LIKE '%'+ItemName+'%'检查搜索字符串是否包含ItemName
  4.   

两种方式都可以得到正确的结果