1

我正在尝试创建一个 select 语句,该语句检查两个值,但检查一个 null,到目前为止,我创建了这个,

string selectStatement 
    = string.Format(@"SELECT a, b, c 
                      FROM Table1 
                      WHERE c IS NOT NULL AND a = {0} AND b = {1}",
                    aValue, bValue);

但我很确定它不会起作用,因为我们在 select 语句中不能有 2 ands,有什么想法吗?

4

2 回答 2

2

您可以AND在您的WHERE子句中包含任意数量的 s。

如果a和是字符串值,那么您需要在值周围加上引号 - 尽管使用参数化查询并避免Sql Injection 漏洞b会更好

SELECT a, b, c 
FROM Table1 
WHERE c IS NOT NULL 
AND a = @p0
AND b = @p1
于 2013-07-09T15:44:57.313 回答
1

没有理由不工作,您使用的是什么数据库?

如果有疑问,您还可以添加括号:

(c 不为 NULL) AND ((a = value) AND (b = value))

于 2013-07-09T15:46:35.007 回答