use*_*084 5 c# sql asp.net search
现在这很棘手......我希望我能很好地解释它......
我有一个表,其中包含名称,我需要将它与我提供的单词进行比较,并得到完全匹配的结果。
现在我说这很棘手,因为我尝试了这个查询,它给了我一组名称。它包含完全匹配的单词以及相似的单词......
这就是我所做的:
DataTable dt = new DataTable();
SqlConnection connection = new SqlConnection();
connection.ConnectionString = ConfigurationManager.ConnectionStrings["xyz "].ConnectionString;
connection.Open();
SqlCommand sqlCmd = new SqlCommand("SELECT Names FROM Machines WHERE Name Like '%' + @userName + '%'", connection);
SqlDataAdapter sqlDa = new SqlDataAdapter(sqlCmd);
sqlCmd.Parameters.AddWithValue("@userName", userName);
sqlDa.Fill(dt);
connection.Close();
Run Code Online (Sandbox Code Playgroud)
现在我想要的是......例如。
如果数据库有三个单词
abc123
XYZ123
pqc1238
现在,如果单词是 123,则应返回 abc123 和 xyz123,如果 c123 则返回 abc123,而不是 pqc1238 和 xyz123
如果是 238 那么就返回 pqc1238....
我希望我说得足够清楚......相信我,我第一次也没明白
任何建议最好找到单词之间的精确匹配..因为 LIKE 是不够的..
谢谢
对我来说,您似乎正在搜索以 @userName 结尾的字符串。
SqlCommand sqlCmd = new SqlCommand("SELECT Names FROM Machines WHERE Name Like '%' + @userName", connection);
Run Code Online (Sandbox Code Playgroud)