我有两个选择语句。
SELECT ...
UNION
SELECT ...
如果我运行第一个SELECT,数据会恢复正常。
如果我运行第二个SELECT,数据会恢复正常。
如果我使用UNION同时运行两个,则第一行始终为NULL。
我不明白。任何人都知道为什么这可能导致问题?
答案 0 :(得分:2)
您的数据中有一个NULL行。什么是hapening是union
正在做一个排序,它将NULL带到第一行。
如果要消除NULL值,请使用where
子句。
如果您希望通过不使用union all
消除重复项来提高查询效率。