暂无图片
MySQL基础问题
我来答
分享
喔喔喔
2020-03-31
MySQL基础问题

IMG20200331113708.jpgIMG20200331113721.jpg

我本打算将最后一列排序,将空值设定为10,但是按照第一行语句执行下来空值没有参与排序,按照图片中第二行语句执行下来,空值=10,并参与了排序,想知道为什么?

我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
Cui Hulong

MySQL5.7.29能正常排序,是不是一下效果,最好把表结构也发出来。

CREATE TABLE `milk_tea` ( `id` int(11) NOT NULL, `in_price` decimal(10,1) DEFAULT NULL, `sale_price` decimal(10,1) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; INSERT INTO `milk_tea` VALUES (1,15.5,NULL),(2,2.1,2.5),(3,10.8,15.0),(4,9.3,15.0),(5,8.8,15.0),(6,12.3,20.0); mysql> select id,in_price,sale_price ,IFNULL(sale_price,10) from milk_tea; +----+----------+------------+-----------------------+ | id | in_price | sale_price | IFNULL(sale_price,10) | +----+----------+------------+-----------------------+ | 1 | 15.5 | NULL | 10.0 | | 2 | 2.1 | 2.5 | 2.5 | | 3 | 10.8 | 15.0 | 15.0 | | 4 | 9.3 | 15.0 | 15.0 | | 5 | 8.8 | 15.0 | 15.0 | | 6 | 12.3 | 20.0 | 20.0 | +----+----------+------------+-----------------------+ 6 rows in set (0.00 sec) mysql> select id,in_price,sale_price ,IFNULL(sale_price,10) from milk_tea order by IFNULL(sale_price,10) ; +----+----------+------------+-----------------------+ | id | in_price | sale_price | IFNULL(sale_price,10) | +----+----------+------------+-----------------------+ | 2 | 2.1 | 2.5 | 2.5 | | 1 | 15.5 | NULL | 10.0 | | 3 | 10.8 | 15.0 | 15.0 | | 4 | 9.3 | 15.0 | 15.0 | | 5 | 8.8 | 15.0 | 15.0 | | 6 | 12.3 | 20.0 | 20.0 | +----+----------+------------+-----------------------+
复制
暂无图片 评论
暂无图片 有用 0
打赏 0
喔喔喔

106217c1d20a8c70.png
你好,这就是我排序用的表。

暂无图片 评论
暂无图片 有用 0
打赏 0
Cui Hulong

1.需要表结构create 创建命令。
show create table table_name;
2.数据库版本。
select version();
3.还有答复的那样的效果吗?

暂无图片 评论
暂无图片 有用 0
打赏 0

学习了

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
MySQL的错误日志保存多久可以设置吗?
回答 2
已采纳
你不删除它就一直存在,删除/清空之后,刷新下错误日志就行FLUSHERRORLOGS;觉得麻烦,可以使用脚本: https://cloud.tencent.com/developer/art
mysql架构方案?
回答 1
如果说有那么只能是MGR。因为金融要求强一致。MGR对网络要求高,不过是乐观锁。但是是唯一官方给的强一致高可用方案。
oracle 和mysql 语句结果不一致问题
回答 7
已采纳
leftjoin不会过滤左表数据。那肯定是where条件过滤了。你看两个库中超级管理员那行的parents列的值是相同的吗?
MYSQL 数据库设计上 的枚举数据 用int 还是 string,理由是什么?
回答 2
已采纳
根据我实际经验来看,用int可以减少数据库的存储及前后端交互的数据大小,但缺点是数字本身无法代表对应的业务含义,在开发运维调试的时候需要反复去找对照关系,效率低。不过如果枚举值少的话,多搞几次就记得了
mysql中什么是回表操作?
回答 5
已采纳
使用非聚簇索引(也就是我们常说的二级索引)先查找到主键值,由于非聚簇索引中不包含用户记录。所以如果想查找到完整用户记录的话,还是需要到聚簇索引中再查一遍,这个过程就是回表。
各位大佬 这个page cleaner 怎么配置多个?
回答 2
看看innodbbufferpoolinstance是多少
mysqlrpladmin+proxysql 有生产在用这个方案吗
回答 1
MySQLUtilities里mysqlrpladmin是用于复制用的,目前为止实际现场中没有碰见过。proxysql(读写分离)用的还是比较普遍。比较简单。还需要按照实际情况进行选择。
MySQL LIMIT 如何改写成Oracle limit?
回答 1
已采纳
SELECTFROM(SELECTROWNUMRNFROM(SELECTFROMt)AWHEREROWNUM<115)WHERERN>100;这是12以前12以后SELECTFROMtOF
You must reset your password using ALTER USER statement before executing this statement.
回答 5
已采纳
alteruseruser()identifiedby'26SE>Z%UddNN'; 
500m内存怎么跑mysql?
回答 1
已采纳
也可以运行。默认安装能起来。但是仅用作练习测试。正式环境这样太低了。