我想使用 Entity Framework 5 搜索我的一张表。我不知道查询中有多少单词,但我想匹配所有单词。
查询=你好
SELECT * FROM [table] WHERE [column] LIKE '%hello%'
查询=你好世界
SELECT * FROM [table] WHERE [column] LIKE '%hello%' AND [column] LIKE '%world%'
我知道功能PATINDEX,但它不够好。为什么?我会给你看:
SELECT * FROM person WHERE PATINDEX('%test%.com%', email)>0
将匹配“test@email.com”,但如果搜索词以其他方式排序,则找不到此人:
SELECT * FROM person WHERE PATINDEX('%.com%test%', email)>0
使用 EF 创建此查询的最有效方法是什么?