Desde que esta questão foi escrita, o mysql introduziu um operador de nave espacial que nos permite usar uma consulta regular para corresponder a um valor nulo
WHERE fieldName <=> :fieldName;
corresponderá tanto a um
null
ou qualquer valor não nulo. Então, basta escrever sua consulta imediatamente e executá-la como de costume
$stmt = $db->prepare('SELECT field FROM table WHERE fieldName <=> :fieldName;');
$stmt->execute(['fieldName' => null]);
$result = $stmt->fetchAll(); // whatever fetch method is suitable
E com consultas construídas dinamicamente é tudo a mesma coisa.