场景:按照字段sequence字段升序排列,如果字段值为null则排到后面
select t.id,t.menu_name,t.menu_sort,t.menu_type,t.modifyable,t.sequence,t.sub_guid from bt_keyvalue_property_menu t where t.menu_type='1'
and t.sub_guid='612309b8-fe53-847a-72c2-b50599939349' ORDER BY t.sequence asc;
实现方式:
添加负数并且倒序 (ORDER BY -t.sequence desc)
select t.id,t.menu_name,t.menu_sort,t.menu_type,t.modifyable,t.sequence,t.sub_guid from bt_keyvalue_property_menu t where t.menu_type='1'
and t.sub_guid='612309b8-fe53-847a-72c2-b50599939349' ORDER BY -t.sequence desc
使用isnull 或者 isnull函数并升序 (
ORDER BY t.sequence is null,t.sequence asc
或者ORDER BY isnull(t.sequence),t.sequence asc
)
select t.id,t.menu_name,t.menu_sort,t.menu_type,t.modifyable,t.sequence,t.sub_guid from bt_keyvalue_property_menu t where t.menu_type='1'
and t.sub_guid='612309b8-fe53-847a-72c2-b50599939349' ORDER BY isnull(t.sequence),t.sequence asc;
select t.id,t.menu_name,t.menu_sort,t.menu_type,t.modifyable,t.sequence,t.sub_guid from bt_keyvalue_property_menu t where t.menu_type='1'
and t.sub_guid='612309b8-fe53-847a-72c2-b50599939349' ORDER BY t.sequence is null,t.sequence asc;