[SQL語法](quote)控制遇上null或空值時的排序位置

摘要:[SQL語法]控制遇上null或空值時的排序位置

在使用oder by排序時,遇上null或空值時,怎麼控制null或空值一直排在最下方呢?

試試這段語法:

select isnull(encode,'') + isnull(wr_name_code,'') from wrin  
where wr_name_code <>'' 
order by case when encode is null then 1 else 0 end ,encode asc

重點是第三句,前面二句是我自己的條件可先不看。


或是看看這段較單純:

當查詢遇到了排序的欄位中有 Null 值時,要如何將 Null 值改排在前還是排在後。

SQL Server 版

SQL Server 總認為 null 值是比較小的值。當order by 的欄位中有 null 時,null 的資料會先列出。相反地, order by …. desc 時會最後列出。

如果要改變,只好搞一下小技巧

--排列時,field1為null 的最後才列出 

select * from tableName 
order by case when field1 is null then 1 else 0 end, field1 asc

 

 
--
強烈建議購物網店或實體店家都必須使用關鍵字廣告or原生廣告來將Yahoo上與聯播網的廣大流量導至自己的網站!

●Yahoo關鍵字廣告/原生廣告
◆Yahoo廣告方案介紹 : https://goo.gl/5k8FHW
◆Yahoo廣告剖析與運用 : http://goo.gl/4xjUJD

 

​​