位置: 编程技术 - 正文

MySQL中对于NULL值的理解和使用教程(mysql null+1)

编辑:rootadmin

推荐整理分享MySQL中对于NULL值的理解和使用教程(mysql null+1),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql中的null值,在mysql中null的含义是,在mysql中null的含义是,mysql =null和is null,mysql nullif,在mysql中null的含义是,在mysql中null的含义是,mysql null+1,内容如对您有帮助,希望把文章链接给更多的朋友!

NULL值的概念是造成SQL的新手的混淆的普遍原因,他们经常认为NULL是和一个空字符串''的一样的东西。不是这样的!例如,下列语句是完全不同的:

两个语句把值插入到phone列,但是第一个插入一个NULL值而第二个插入一个空字符串。第一个的含义可以认为是“电话号码不知道”,而第二个则可意味着“她没有电话”。

在SQL中,NULL值在于任何其他值甚至NULL值比较时总是假的(FALSE)。包含NULL的一个表达式总是产生一个NULL值,除非在包含在表达式中的运算符和函数的文档中指出。在下列例子,所有的列返回NULL:

如果你想要寻找值是NULL的列,你不能使用=NULL测试。下列语句不返回任何行,因为对任何表达式,expr = NULL是假的:

要想寻找NULL值,你必须使用IS NULL测试。下例显示如何找出NULL电话号码和空的电话号码:

在MySQL中,就像很多其他的SQL服务器一样,你不能索引可以有NULL值的列。你必须声明这样的列为NOT NULL,而且,你不能插入NULL到索引的列中。

当用LOAD DATA INFILE读取数据时,空列用''更新。如果你想要在一个列中有NULL值,你应该在文本文件中使用N。字面上的词'NULL'也可以在某些情形下使用。

当使用ORDER BY时,首先呈现NULL值。如果你用DESC以降序排序,NULL值最后显示。当使用GROUP BY时,所有的NULL值被认为是相等的。

为了有助于NULL的处理,你能使用IS NULL和IS NOT NULL运算符和IFNULL()函数。

MySQL的 IFNULL() 函数和Oracle的 NVL() 函数功能类似。以下简单举例:IFNULL(expr1, expr2) 如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。

MySQL中对于NULL值的理解和使用教程(mysql null+1)

功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值。引申一下,此NVL的作用与SQLserver 中的 ISNULL( string1, replace_with) 一样。注意事项:string1和replace_with必须为同一数据类型,除非显式的使用TO_CHAR函数。例:

其中numeric_column代指某个数字类型的值。例:

NVL(yanlei, 0) 的意思是 如果 yanlei 是NULL,则取 0值

null与空值的辨析来看这样一段代码:

错误(不可以插入null值):

正确(插入''没问题):

检索(''不是null,所以not null会把''都算进去):

结果:所有三条数据

检索(正常检索):

结果:最后一条数据

检索(<>'',会同时排除''和null的数据,只检索有内容的数据):

总结:1. null的存储不是'',是其它特殊的字符表示。2. null在检索<>''的时候,也会被排除,因为没有真正有意义的内容3. not null严格按照字面意思,''不会被排除。4. 定义not null的字段,可以插入''

MySQL存储过程中的基本函数和触发器的相关学习教程 MySQL存储过程的常用函数一.字符串类CHARSET(str)//返回字串字符集CONCAT(string2[,...])//连接字串INSTR(string,substring)//返回substring首次在string中出现的位置,不存

实现MySQL回滚的Python脚本的编写教程 操作数据库时候难免会因为大意而误操作,需要快速恢复的话通过备份来恢复是不太可能的,因为需要还原和binlog差来恢复,等不了,很费时。这里先

美团网技术团队分享的MySQL索引及慢查询优化教程 MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓好马配好鞍,如何能够更

标签: mysql null+1

本文链接地址:https://www.jiuchutong.com/biancheng/312379.html 转载请保留说明!

上一篇:MySQL中利用索引对数据进行排序的基础教程(mysql 使用索引)

下一篇:MySQL存储过程中的基本函数和触发器的相关学习教程(mysql存储过程cursor)

  • 小规模增值税会计处理流程
  • 视同销售计税价格如何确定?
  • 已核销的坏账又收回会计分录
  • 公司购买的电脑怎么做账
  • 发票开工程服务和工程款的区别
  • 增值税专用发票抵扣税额是什么意思
  • 购入设备发生的运输费计入什么科目
  • 其他综合收益损失
  • 员工异地缴纳社保协议
  • 房产公司收到的增值税
  • 公司组织员工旅游,起到的目的是什么
  • 单位车转到个人名下要什么材料
  • 预收货款属于资金投入吗
  • 合同额在3000以下的是否缴纳印花税?
  • 没有运输经营范围能不能开运输发票
  • 公司筹建期产生的费用如何开票?
  • 钢化玻璃税率是多少?
  • 海关进口增值税专用缴款书如何抵扣
  • 初级备考需要多长时间
  • 凭证出现错误如何解决
  • 出售股票或债券的条件
  • 其他应付款挂多少有风险
  • 企业所得税法的规定可在税前扣除的
  • bios如何设置光盘启动项
  • 退回多缴税款账务处理
  • 公司卖二手车的流程
  • 暂存款账务处理
  • Win11安装失败怎么办
  • 集团公司交税怎么交?
  • 外币债券汇兑损益怎么算
  • kprcycleaner.exe是什么
  • 金融企业风险资产处理相关税收政策
  • PHP:imagecreatefromstring()的用法_GD库图像处理函数
  • php中函数定义没有返回值类型
  • 劳务报酬已扣税是否需报个税
  • 无法按时交纳税怎么办
  • java后端代码例子
  • 银行借款利息如何入账
  • JS初识
  • 增值税发票查验结果不一致是什么意思
  • 绿化租赁合同要交印花税吗
  • 调整以前年度销项税怎么填申报表
  • 出资人和法人承担责任
  • 职工短期薪酬包括哪些
  • SQLServer 2008 :error 40出现连接错误的解决方法
  • 外购固定资产对公司影响
  • 已执行新金融准则 本期金额
  • 建筑施工企业质量管理规范
  • 企业预付款属于负债吗
  • 申请专利的费用怎么入账
  • 债券发行费用的计算方法
  • 收到所得税退税的账务处理
  • 生产成本和制造费用期末有余额吗
  • mysql中计算两个日期之间的天数
  • 电脑鼠标滑动时没法动,怎么办?
  • ubuntu server教程
  • fedora phpMyAdmin 安装方法及介绍
  • iTunesHelper.exe是什么进程?iTunesHelper.exe系统错误怎么解决?
  • linux输出结果
  • win1020h2版本怎么更新
  • win10 edge浏览器崩溃
  • 批处理在windows中的典型应用
  • 注册表cmd
  • 脚本添加crontab
  • unity4.5.3f3 和 Android的通信
  • jquery fadein 源码
  • nodejs怎么学
  • python递归查找
  • python生成txt文档
  • 盗梦英雄限时占卜顺序
  • JavaScript html5 canvas画布中删除一个块区域的方法
  • css实现3d效果
  • Listview的onItemClickListener无法响应的解决方法
  • ukey开票人是管理员改胃自己时只能开电子发票
  • 重庆地方税务局电子税务局官网
  • 河南准生证查询平台
  • 病历证明在医院保存多久
  • 车船税保险公司代收代缴后,单位还申报不?
  • 买高档手表
  • 国税合并地税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设