False value in Where Clause Returns All Rows?
问题 I have a query that looks like this: `SELECT id, username FROM table_name WHERE username=0` When I run this query MySQL returns all rows in table_name. Additionally, if I substitute 0 for false I get the same results. If I use null or an empty string then I get no rows returned (as expected). The username column is varchar(50) if it makes a difference. My question then is this : Why does putting 0 or false in that query return all rows in the table? Is this a MySQL setting? This worries me a