好的,我有一个列表,它包含一组来自sql查询的值,该部分工作正常。我想要做的是使用该列表中的项目告诉另一个查询要查找什么。所以,它说的是,它应该返回CMMReports的所有列,其中PartNumber就像%listItem1..2 ... 3%,任何建议?在SQL查询中使用列表<string>中的项目
List<string> ImportedParts = GetImportedPartNumbers();
string query = "SELECT * FROM CMMReports WHERE (RacfId IS NULL OR RacfId = '') AND (FilePath NOT LIKE '%js91162%') AND PartNumber LIKE %" + ImportedParts + "% ORDER BY CreatedOn DESC;";
您是否希望在单个记录中匹配列表中的每个项目?或列表中的任何项目? – 2010-07-13 15:33:19
您应该至少从参数化的SQL查询开始,这样您就不会遇到SQL注入攻击。 – bkaid 2010-07-13 15:34:24
所以如果你已经有一个现有的部件号列表,你为什么使用LIKE? LIKE是当你想匹配字符串的一部分时: 就像“%an”查找AN中的每个记录,结果为 LIKE“an%”查找AN中开始的每个记录 LIKE“%an%”查找每条记录包含一个 – Leslie 2010-07-13 15:57:19