Un in
la declaración se analizará de forma idéntica a field=val1 or field=val2 or field=val3
. Poner un nulo allí se reducirá a field=null
que no funcionará.
(Comentario de Marc B)
Haría esto por claridad
SELECT *
FROM tbl_name
WHERE
(id_field IN ('value1', 'value2', 'value3') OR id_field IS NULL)