Seu método de verificação de NULL provavelmente é o problema. No MySQL, tente o seguinte:
SELECT `id` FROM `users` WHERE `username` = "test" AND `id` IS NOT NULL;
Para verificar se há NULL e uma string vazia, você pode usar:
SELECT `id`
FROM `users`
WHERE `username` = "test"
AND (`id` IS NOT NULL OR `id` != "");