读书人

SQL语句有关问题要实现间歇性匹配

发布时间: 2013-11-25 13:22:27 作者: rapoo

SQL语句问题,要实现间歇性匹配,怎么写?
例如:数据库里内容是“内容段1|内容段2|内容段3|内容段4”,现有内容“内容段1|内容段3”,此时我们说“现有内容存在于数据库”;但如果现有内容是“内容段5”,此时我们说“现有内容不存在于数据库”。不知道表达清了没有,这样的sql语句怎么写?
[解决办法]
... where content like '%内容段1%' AND content like '%内容段3%'
不过要小心效率问题(如果没有全文搜索)。
[解决办法]
数据库内容保持不变,如果是“内容段1
[解决办法]
内容段5”,请问存在还是不存在?也就是说你这个存在是指部分存在还是必须每个都存在?
[解决办法]
如果内容是在同一个字段内,可这样


string[] content = { "内容段1", "内容段2", "内容段3", "内容段4", "内容段5" };
foreach (string con in content)
{
sql = "select * from table where content='"+con+"'";
int i = ExecuteSql(sql);
if (i>0)
{
MessageBox.Show(con+"存在数据库中");
}
else
{
MessageBox.Show(con+"不存在数据库中");
}

}

//返回记录数
public static int ExecuteSql(string SQLString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand(SQLString, connection))
{
try
{
connection.Open();
int rows = cmd.ExecuteNonQuery();
return rows;
}
catch (System.Data.SqlClient.SqlException E)
{
connection.Close();
throw new Exception(E.Message);
}
}
}
}

读书人网 >C#

热点推荐