Произвожу парсинг с занесением данных в БД, некоторые элементы при парсинге могут быть None, так они в базу и отправляются, при этом в базу они заносятся как NULL. Проблема заключается в том, что перед тем, как занести элемент в базу я проверяю его на наличие:
cursor = await db.execute('SELECT * FROM MATCHES WHERE (a="{}" AND b="{}" AND c="{}".format(a, b, c)))
И тут проблема, при выполнении SELECT получается так, что если a = None, то a != NULL и запись происходит дубликатом. Подозреваю, что это происходит из-за того, что в базу уходит запрос типа a="None", т.е. строковой тип.
Запись происходит другим запросом:
INSERT INTO MATCHES (a, b, c) VALUES (?,?,?)', (a, b, c)
Пробовал другой синтаксис:
'SELECT * FROM MATCHES WHERE (a=? AND b=? AND c=?)', (a, b, c)
Результат такой-же.
Как можно дать INSERT поднять, что None == NULL, при условии что любой элемент (a, b, c) может быть None и их гораздо больше, чем 3?