2013-12-10 107 views
2

我在編寫SQL select語句中的條件符合上述條件時遇到了一些麻煩。有什麼建議?連接linq查詢的等效T-SQL select查詢是什麼?

AllCompany = AllCompany 
.Where(company =>fldSector 
.Contains(company["Sectors"].Replace("|", ","))).ToList(); 

enter image description here

+0

那將會有表現不佳,因爲SQL服務器不能夠有效地與領先的通配符搜索。考慮規範你的數據(可能是一個適合項目和部門之間的表)。 –

回答

1

在SQL服務器的一個REPLACE()功能,它可能是這樣的,如果你對你的表做updating

UPDATE tableName 
SET sectors = REPLACE(sectors,'|',','); 

Fiddle Demo

或者,如果你想簡單地SELECT,您可以使用PATINDEX()

SELECT sectors 
FROM tableName 
WHERE PATINDEX('%|%',sectors) > 0 

Fiddle Demo with PATINDEX