我想使用Entity Framework 5來搜索我的一個表。我不知道查詢中有多少個單詞,但我想匹配所有這些單詞。使用實體框架搜索數據庫。 LIKE運算符
查詢= 你好
SELECT * FROM [table] WHERE [column] LIKE '%hello%'
查詢= 的hello world
SELECT * FROM [table] WHERE [column] LIKE '%hello%' AND [column] LIKE '%world%'
我知道函數PATINDEX,但它不工作不夠好。爲什麼?我會告訴你:
SELECT * FROM person WHERE PATINDEX('%test%.com%', email)>0
將匹配「[email protected]」,但如果搜索詞是有序的其他方式,也不會找到這個人:
SELECT * FROM person WHERE PATINDEX('%.com%test%', email)>0
是什麼使用EF創建此查詢的最有效方法?
這將生成「select * from where where列LIKE'hello'」。 (CAST(CHARINDEX(N'%'+ @ p__linq__1 + N'%',[Extent1]。[column])AS int))> 0) –
@ stian.net爲什麼?你會添加'%'嗎? –
@Bob,因爲我想搜索.. LIKE'test'不會返回包含'test'的列 –