当前位置: 首页 > news >正文

怀化找工作网站内容营销成功案例

怀化找工作网站,内容营销成功案例,帮做论文网站,海南省建设培训与职业资格注册中心网站在使用数据库时,有时需要表示未知值,这时可以使用NULL值表示。引入NULL值后,会对原有的使用产生影响,这里记录下常见的场景,以做记录。 NULL含义 在MySQL中,NULL值表示一个未知值,表示不可知、…

在使用数据库时,有时需要表示未知值,这时可以使用NULL值表示。引入NULL值后,会对原有的使用产生影响,这里记录下常见的场景,以做记录。

NULL含义

在MySQL中,NULL值表示一个未知值,表示不可知、不确定。NULL值不同于0或空字符串’'。NULL不与任何值相等,即使是其本身。

NULL的存储

表中的某些列可能会存储 NULL 值,如果把这些 NULL 值都放到记录的真实数据中会比较浪费空间。MySQL 使用Compact Row Format记录NULL值。具体来说,Compact Row Format 中每个行记录都会有一个Bit vector来记录行中出现NULL的字段,长度为 N / 8 向上取整,其中 N为值NULL的字段数。
二进制位的值为1时,代表该列的值为NULL。
二进制位的值为0时,代表该列的值不为NULL。

NULL使用场景

NULL的比较

NULL不与任何值相等,即使是其本身。如果将NULL值与另一个NULL值或任何其他值进行比较,则结果为NULL。
为了实现对NULL的比较,MySQL提供了三大运算符:
(1) IS NULL: 当列的值是 NULL,此运算符返回 true。
(2) IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。
(3) <=>: 比较操作符(不同于 = 运算符),当比较的的两个值相等或者都为 NULL 时返回 true。
注意,不能使用 = NULL 或 != NULL 在列中查找 NULL 值。

NULL与SELECT

执行SELECT操作时,如果列的值为NULL,可以使用 IS NULL、IS NOT NULL、<=> 运算符。

NULL与COUNT

执行COUNT操作时,如果使用COUNT(column_name)统计行数,需要注意列值为空的情况。如果column_name是非主键字段,那么只会统计列值为NULL的行数,需要说明的是,就这种情况下,不管在 InnoDB 引擎 还是在 MyISAM引擎中,非主键这个字段如果添加了索引且覆盖该字段,则可基于索引统计行数,如果未添加索引,则会触发全表扫描。
更多COUNT函数的使用可以参考笔者MySQL中count(*)和count(1)和count(column)使用比较一文。

NULL与数据运算

NULL值与其他值进行运算时,结果总是为NULL。且不同的运算符可能不能容忍NULL的场景,引入空指针问题等。

NULL与索引

MySQL中某一列数据含有NULL时,并不一定会造成索引失效。在有NULL值的字段上使用常用的索引,如普通索引、复合索引、全文索引等不会使索引失效。但是在使用空间索引的情况下,该列就必须为 NOT NULL。

NULL与排序

在使用ORDER BY排序的时候,如果是升序排序(ASC),那么 NULL 值在所有其他值之前;如果是降序排序(DESC),那么 NULL 值在所有其他值之后。注意,这种处理并不是说明NULL值比任何值大或小,只是一种约定。

总结

在MySQL中,引入NULL值表示表示一个未知值,表示不可知、不确定。尽管提供了NULL值,但是在日常开发中,不建议使用NULL值,建议为其设置默认值,如空字符串或 0 等。如果必须使用NULL,对于判空的场景,可以使用IS NULL或 IS NOT NULL或<=>。如果需要统计行数,需要注意COUNT(column_name)不能统计非NULL的值。如果需要执行计算,也要注意NULL与任何值进行运算时,其结果均为NULL,且可能引入空指针的问题。此外,引入NULL值后,还需注意索引是否会失效,如在空间索引中,列值必须为 NOT NULL。在使用ORDER BY排序时,如果是升序排序,那么 NULL 值在所有其他值之前;如果是降序排序(DESC),那么 NULL 值在所有其他值之后。
简言之,数据库需要对 NULL 值进行特殊处理,针对 NULL 的值使用,有以下建议:
【建议】不推荐使用NULL值,建议为其设置默认值。
【建议】推荐使用 IS NULL(cloumn) 来判断 NULL值。

参考

https://zhuanlan.zhihu.com/p/140089695 MySQL:细说NULL
https://www.runoob.com/mysql/mysql-null.html MySQL NULL 值处理
https://www.yiibai.com/mysql/null.html MySQL NULL值简介
https://zhuanlan.zhihu.com/p/611947091 MySQL允许字段为null会导致5个问题,个个致命!
https://www.cnblogs.com/xiaolincoding/p/16941244.html MySQL 的 NULL 值是怎么存储的?
https://juejin.cn/post/7028203652099604516 深入探究MySQL中的NULL
《Java开发手册》 阿里巴巴

http://www.sczhlp.com/news/43023/

相关文章:

  • 自己做的网站怎么收藏本站百度搜索指数和资讯指数
  • 插入视频网站网上代写文章一般多少钱
  • android FragmentManager 删除所有Fragment 重建
  • 优雅求模,一致性哈希算法
  • 做网站需要提供的资料营销网站的建造步骤
  • 外链网站分类青岛做网站推广
  • 乐山做网站宣传方式
  • wordpress媒体优化武汉seo收费
  • 合肥 网站平台建设公司优化系统的软件
  • 分类信息网站模板百度热议怎么上首页
  • java设置栈内存大小
  • 临沂电商网站建设seo排名怎么做
  • wordpress手机移动版国外搜索引擎优化
  • 南京市高淳区住房与城乡建设局网站百度竞价登陆
  • 怎么利用网站赚广告费推广接单平台哪个好
  • 产品开发流程表辽宁网站seo
  • 哪些网站是由wordpress做的网站交易网
  • shopify做国内网站企业网站排名优化方案
  • 商城网站开发企业如何把自己的网站推广出去
  • 有免费建站的网站吗免费引流推广的方法
  • 福州网站制作seo案例分享
  • 【日记】领导就我这个人本身来了一次全方位的践踏,笑死(767 字)
  • REPLACE()函数
  • 电子商务网站建设与管理目录杭州做seo的公司
  • 怎么做网站后台 更新日志关键词歌词含义
  • 做视觉影像网站用什么软件系统百度快快速排名
  • 网站关于我们什么意思互联网产品运营
  • 微商网站怎么做网站关键词如何优化上首页
  • 美食网站建设的时间进度表搜索引擎优化与关键词的关系
  • 企业网站设计源代码重庆seo怎么样