SQL选择语句混淆

本文关键字:语句 选择 SQL | 更新日期: 2023-09-27 18:21:36

我正在尝试创建一个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);

但我很确定它不会起作用,因为我们不能在选择语句中有2个和,任何想法;s请问?

SQL选择语句混淆

WHERE子句中可以有任意多个AND

如果ab是字符串值,则需要在值周围加引号——尽管最好使用参数化查询并避免Sql注入漏洞

SELECT a, b, c 
FROM Table1 
WHERE c IS NOT NULL 
AND a = @p0
AND b = @p1

没有理由不这样做,你在使用什么DB?

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

(c不为空)AND((a=值)AND(b=值))