在PyMySQL中的select语句中处理None值的最佳方法是什么。例如,假设我想生成以下查询:
SELECT *
FROM table
WHERE name = %s
AND address = %s
AND city = %s
AND phone = %s
但是,手机可以是无,在这种情况下,语句必须如下所示:
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中,我通常可以使用关联数组进行搜索,然后过滤掉空值。
答案 0 :(得分:0)
也许是这样的:
"SELECT * FROM table WHERE "+("phone = %s" if phone else "phone is NULL")
并继续这种模式。