擅长:python、mysql、java
<p>这个论点以前在SO中已经提出过。我建议您回顾一下<a href="https://stackoverflow.com/questions/36233807/null-values-behaviour-in-bigquery-queries-results">this post</a>,包括对您的问题的解释和解决方法。在</p>
<p>有一些很好的答案,例如这一个,来自Mosha(谷歌软件工程师):</p>
<blockquote>
<p>This is standard behavior of NULL in SQL, and all SQL databases
(Oracle, Microsoft SQL Server, PostgreSQL, MySQL etc) have exactly
same behavior. If the IS NULL check is too tedious, alternative
solution is to use IFNULL or COALESCE function to convert NULL into
non-NULL, i.e.</p>
<pre><code>select * from
(select NULL as some_nullable_col, "name1" as name),
(select 4 as some_nullable_col, "name2" as name),
(select 1 as some_nullable_col, "name3" as name),
(select 7 as some_nullable_col, "name4" as name),
(select 3 as some_nullable_col, "name5" as name)
WHERE ifnull(some_nullable_col,0) != 3
</code></pre>
</blockquote>