在我的sql server存储过程中,下面的代码有问题
SELECT NULL AS s_empname
UNION
SELECT s_empname FROM ps_OFFICE
在此,我没有将NULL
作为第一选项,因为它不是字符串。如果我把它传递给:
SELECT ('NULL') AS ps_name
UNION
SELECT ps_name ps_OFFICE
它不起作用。
如何以NULL
必须s_empname
的方式更新第一个,但必须在报告的下拉列表中显示为' NULL'或者'没有工作'?
答案 0 :(得分:0)
union
和union all
不保证结果的排序。只有ORDER BY
子句才能这样做。
所以,你应该使用:
SELECT s_empname
FROM (SELECT NULL AS s_empname, 1 as priority
UNION
select s_empname, 2 from ps_OFFICE
) t
ORDER BY priority;
您应该使用UNION ALL
,除非您打算删除重复项。