【Mysql必知必会】第4到8章

1.目录

就mysql而言,在SQL搜索语义从层面上:

  • 可以将表中数据看都看作字符串,在写SQL的时候,将数字写成’1’,‘2’仍能被识别成数字;
  • 可以不用区分浮点数和整数;
  • 可以将子串等字符串操作用在数值类型数据上;
  • 可以将大小关系等用在字符串操作上,不过这个本来就可以,毕竟有字典序之类概念;
    在这里插入图片描述

2.查询

固定列、所有列

  • 所有列的语法,SELECT * FROM table;
  • 格式化问题,SQL返回的数据是裸数据,需要在程序中进行格式处理;

去重

  • 写法为SELECT DISTINCT col0, col1 … coln FROM products;
  • 去重会作用在多个列上,除非col0, col1 … coln的组合是需要去重的,否则不起任何效果;

行数限定

  • 其实就类似于head指令;
  • 写法为LIMIT 5 或 LIMIT 4,5(从第4行开始输出5行)或LIMIT 5 OFFSET 4;
  • 在OFFSET中第一行应该是0,是从0开始计数的;

完全限定表

  • SELECT products.prod_name FROM sqlLearning.products;

3.排序

排序数据、多列排序

  • 排序可以指定多行,ORDER BY vend_id, product_id这样
  • 不应该假设未排序的查询结果的顺序具有意义,也就是一般别去理会由于底层结构从而得到的默认顺序;
  • 可用非SELECT的列排序;

指定排序的升降序

  • 使用DESC(降序)、ASC(升序),一般ASC用不上因为是默认的,
    ORDER BY vend_id DESC这样,少数在查询内容后面的关键字;
  • 可以多列排序,但每个列指定不同的方向;
	SELECT products.prod_name  
    FROM products
    ORDER BY vend_id DESC, prod_name;

4.查询条件

单值匹配、不匹配

  • 从此处可得开头的结论,在SQL语义上是尽量不去区分字符串、数值的。例如字符串也实现了字典序,数值在SQL语句上用’1’等表示也能识别成数值,数值也可以用字符串的求子串等操作;

空值检查

  • 空值与0、空格等都不相同,就是特殊值NULL,所以也有了特别的控制检查;
  • 空值检查写法为IS NULL,非空值检查写法为IS NOT NULL;

连续范围查询

  • 写法为BETWEEN x AND y;
  • 在Mysql中是[x, y]的形式,上下边界都被包含;
  • 不但可用于数值,也可用于字符串的字典序;
  • 可用 t >= x AND t <= y来实现,查询速度基本相等,暂未知详细差异;

组合条件

  • 关键字AND和OR,其实就相当于&&和||,连优先级都一样,&&高于||;

特殊关键字NOT

  • 可用于修饰NULL、BETWEEN、IN、EXIST;

离散范围查询

  • 写法为IN(val0, val1 … valn);
  • 明显可用于数值、字符串;
  • 可嵌套SELECT语句;

模糊查询

  • 是一种类似类似于正则表达式的东西,可以描述一种字符串模式;
  • 但是和正则表达式具有区别,具体为:
    例如搜索字符串是"string",REGEXP 'str’会匹配成功,LIKE ‘str’会匹配失败;
  • 写法为LIKE xxx,通配符%表示任意个数任意字符,通配符_表示一个任意字符;
  • 明显是用来搜索字符串的,但如上所说,mysql中数值也兼有字符串的一些性质;
  • 一般不建议 ‘%ring’ 这种在开头使用通配符的写法,搜索会很慢;
  • 结尾如果存在尾空格的话,例如 ‘string ‘,那么’%ing’ 明显会匹配失败;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL》是一本关于数据库管理系统MySQL的教程类书籍,主要面向初学者和有一定数据库识基础的读者。本书的第四版是对前三版进行更新和完善的版本。 《MySQL》第四版主要包括以下内容: 1. MySQL的基本概念和原理:介绍了MySQL的基本概念、架构和工作原理,帮助读者理解MySQL作为一种关系型数据库管理系统的特点和优势。 2. 数据库设计和建模:详细介绍了如何进行数据库设计和建模,包括数据库的范式和关系模型,以及实体关系模型(ER模型)的设计和转换。 3. SQL语言基础:从基本的SELECT查询开始,逐步介绍了SQL的各种查询语句,如INSERT、UPDATE、DELETE,以及各种高级查询语句,如JOIN、GROUP BY、HAVING等。 4. 数据表操作和管理:介绍了如何创建、修改和删除数据表,以及如何对数据表进行数据操作,如插入、更新和删除数据。 5. 数据库安全和优化:讲解了数据库的安全性管理,包括用户和权限管理,以及数据库的性能调优,如索引的使用和查询优化的技巧。 6. 数据库的备份和恢复:介绍了数据库的备份和恢复的方法和工具,包括物理备份和逻辑备份的区别,以及如何使用MySQL提供的工具进行数据库的备份和恢复。 《MySQL》第四版还提供了大量的实例和练习,帮助读者加深对MySQL的理解,并能够熟练使用MySQL进行数据库的设计、建模和管理。无论是对于初学者还是有一定数据库识基础的读者,都能够从这本书中获得实用的MySQL数据库管理技能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值