Python PyMySQL在select语句中处理None

Python PyMySQL在select语句中处理None,python,pymysql,Python,Pymysql,在PyMySQL中处理select语句中的None值的最佳方法是什么。例如,假设我要生成以下查询: SELECT * FROM table WHERE name = %s AND address = %s AND city = %s AND phone = %s 但是,phone可以是None,在这种情况下,声明需要如下所示: SELECT * FROM table WHERE name = %s AND address = %s AND city = %s AND phone IS NULL

在PyMySQL中处理select语句中的None值的最佳方法是什么。例如,假设我要生成以下查询:

SELECT *
FROM table
WHERE name = %s
AND address = %s
AND city = %s
AND phone = %s
但是,phone可以是None,在这种情况下,声明需要如下所示:

SELECT *
FROM table
WHERE name = %s
AND address = %s
AND city = %s
AND phone IS NULL
或者也可以接受以下情况:

SELECT *
FROM table
WHERE name = %s
AND address = %s
AND city = %s

实际的查询要复杂得多,所以我正在寻找一个通用的解决方案。在PHP中,我通常可以使用关联数组进行搜索,然后过滤掉空值。

可能类似于:

“从表格中选择*,其中“+”(“电话=%s”,如果“电话”或“电话为空”)

并继续这种模式。

可能类似于:

“从表格中选择*,其中“+”(“电话=%s”,如果“电话”或“电话为空”)

继续这种模式。

如果有帮助,在Python DB API中,
SQL空值由Python None单例在输入和输出上表示。
这一部分很清楚,问题是在MySQL中,您没有编写“ITEM=NULL”,而是在Python DB API中编写“ITEM is NULL”,如果有帮助,
SQL空值在输入和输出时由Python None单例表示。
这一部分很清楚,问题是在MySQL中,您没有写“ITEM=NULL”,而是写“ITEM为NULL”