我有一个问题,也许它很简单(对你来说是大师)。
我正在将我的 SQL 分页类从 C# 转换为 MySQL 存储过程。在我的 C# 自制对象中,查询是根据条件动态构建的。例子:
if(keywords is not null)
{
whereClause += "WHERE description LIKE '%keywords%'"
}
if(price is not null)
{
whereClause += "AND price = '%price%'"
}
……
string query = "SELECT col1, col2 FROM tblThreads " + whereClause
现在,我的问题是:如何在 MySQL 中执行类似于此的动态 where 子句?或者更确切地说,如果他们没有为这些参数输入任何内容,我将如何告诉存储过程中的 MySQL 跳过这些?IE:
SELECT col1, col2 FROM tblThreads
如果这些参数为空,这样的事情会起作用吗?
SELECT col1, col2 FROM tblThreads WHERE (IS NULL @keywords OR description like '%@keywords%'
??
多谢你们。