Je to proto, že převádí pole e-mailu (předpokládám, že je pole varchar) na celé číslo. Jakékoli pole bez platného celého čísla se bude rovnat 0. Měli byste se ujistit, že porovnáváte pouze řetězcová pole s řetězcovými hodnotami (totéž platí pro data, srovnávání s daty). Dotaz by měl být následující.
SELECT * FROM table WHERE email='0';