SQL基础查询与排序-天池龙珠计划SQL训练营

在SQL中,ORDER BY子句用于指定查询结果的排序方式。若要将regist_date字段为NULL的记录排在前面,可以使用IF(ISNULL(regist_date),0,1)表达式,结合DESC和ASC进行排序。例如,以下查询会先按regist_date是否为NULL排序,然后按regist_date降序和sale_price升序排列:SELECT * FROM product ORDER BY IF(ISNULL(regist_date), 0, 1), regist_date DESC, sale_price ASC。

练习题7

此前我们曾经使用SELECT语句选取出了product(商品)表中的全部记录。当时我们使用了ORDERBY子句来指定排列顺序,但现在已经无法记起当时如何指定的了。请根据下列执行结果,思考ORDERBY子句的内容。

学习这题的时候,如何把regist_date为null的放最前面,采用的是IF(ISNULL(regist_date),0,1) 如果regist_date为null改为1,其他为0,最后语句为:

SELECT * FROM product ORDER BY IF(ISNULL(regist_date),0,1),regist_date DESC,sale_price ASC;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值