展开全部

主编推荐语

MySQL编程入门书,引入故事场景,呈现SQL原理。

内容简介

在当今社会,高效管理数据是一种思维方式,也是一种能力。越来越多的公司和岗位看重这一点。

本书的核心理念是基于MySQL将学习数据管理的过程自然融入日常生活,使学习变得轻松,而不再是一项艰巨的任务。本书采用引入故事场景的方式来呈现SQL语句的适用情景,并以此来解释其使用原理,帮助读者更好地理解SQL语言的本质。

本书不仅是一本技术入门指南,也是一次走进SQL世界的探索之旅,旨在为初学者提供全面、易于理解、实用的学习体验。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 第1章 七嘴八舌聊SQL
  • 1.1 什么是SQL
  • 1.2 什么是数据库
  • 第2章 简单检索
  • 2.1 基础查询:姻缘介绍所的联络清单
  • 2.1.1 检索整张表(通配符“*”)
  • 2.1.2 检索整张表的限制
  • 2.1.3 检索特定列
  • 2.1.4 理解表中的“列”与“行”
  • 2.1.5 关于SQL语句的书写规范
  • 2.2 对查询结果排序:鱼儿的大小和颜色
  • 2.2.1 根据单列内容排序
  • 2.2.2 升序和降序
  • 2.2.3 排序的必要性和原理
  • 2.2.4 根据多列内容排序
  • 2.2.5 使用列别名排序
  • 2.2.6 使用列编号排序
  • 2.2.7 ORDER BY的其他使用事项
  • 2.3 LIMIT分页语句:跳跃的青蛙
  • 2.3.1 限制结果的输出行数
  • 2.3.2 LIMIT的用法分析
  • 2.3.3 浅谈SQL语法
  • 2.3.4 搭配LIMIT进行数据更新
  • 2.4 去掉重复的输出行:唯一的组合值
  • 2.4.1 使用DISTINCT
  • 2.4.2 对整张表去重没有意义:初识主键
  • 2.4.3 另一种去重的办法:使用GROUP BY
  • 2.4.4 MySQL中列别名的特殊用法
  • 2.4.5 如何在SQL语句中添加注释
  • 第3章 数据过滤与模糊查询
  • 3.1 基础的数据过滤:酷似“苏菲·玛索”的女孩
  • 3.1.1 初识WHERE从句
  • 3.1.2 比较运算符
  • 3.1.3 理解空值
  • 3.1.4 利用空值进行过滤
  • 3.1.5 使用BINARY区分过滤条件中的大小写
  • 3.2 使用逻辑操作符:挑选优质的巴尔干甜豆
  • 3.2.1 操作符AND和OR
  • 3.2.2 AND和OR的执行原理
  • 3.2.3 组合查询:UNION ALL与UNION
  • 3.2.4 再次理解AND和OR
  • 3.2.5 使用小括号改变连接对象
  • 3.2.6 操作符IN和NOT
  • 3.2.7 课后阅读:《胶囊时报》专栏采访
  • 3.3 模糊查询:谓词LIKE和正则表达式REGEXP
  • 3.3.1 模糊查询的适用场景
  • 3.3.2 得心应手的百分号(%)
  • 3.3.3 专一的下画线(_)
  • 3.3.4 让特殊符号回归符号本身(\\)
  • 3.3.5 正则表达式的一般使用场景
  • 3.3.6 正则表达式的更多使用场景
  • 第4章 显示栏、CASE表达式与常用函数
  • 4.1 创建显示栏:卡路奇欧的“贪婪美德”
  • 4.1.1 使用算术运算符创建显示栏
  • 4.1.2 将MySQL当作计算器
  • 4.1.3 算术运算符与空值:COALESCE函数
  • 4.1.4 创建拼接栏:“猫牌胶水”CONCAT函数
  • 4.2 神奇的变形咒语:CASE表达式
  • 4.2.1 初识CASE表达式
  • 4.2.2 CASE表达式的一般使用原理
  • 4.2.3 不同的输出形式和对应效果
  • 4.2.4 CASE表达式的规律总结
  • 4.3 千奇百怪的函数:MySQL的生物多样性
  • 4.3.1 函数多样性的原因
  • 4.3.2 处理时间的函数
  • 4.3.3 处理字符串的函数
  • 4.3.4 处理数值的函数
  • 第5章 聚集函数、窗口函数与数据分组
  • 5.1 使用聚集函数:返回一组数据的各项指标
  • 5.1.1 什么是聚集函数
  • 5.1.2 统计个数和统计行数:COUNT函数
  • 5.1.3 COUNT(*)与COUNT(列名)的原理解释
  • 5.1.4 求和:SUM函数
  • 5.1.5 求均值:AVG函数
  • 5.1.6 求最大值与最小值:MAX函数和MIN函数
  • 5.2 GROUP BY数据分组:对数据进行打包处理
  • 5.2.1 数据分组的重要性
  • 5.2.2 分组计算的产物与分组的原理
  • 5.2.3 分组前的数据过滤:使用WHERE过滤行
  • 5.2.4 指定多个分组依据
  • 5.2.5 配合使用WITH ROLLUP:贴心的小计与总计
  • 5.2.6 对空值分组:验证COUNT(列名)与COUNT(*)
  • 5.3 使用HAVING从句进行过滤:“韦尔集团”的大麻烦
  • 5.3.1 分组后的数据过滤:使用HAVING过滤组
  • 5.3.2 WHERE的不完美替代品
  • 5.3.3 “三巨头”的会面:同时使用WHERE、GROUP BY和HAVING
  • 5.4 窗口函数:等级、累计与拆分
  • 5.4.1 初识窗口函数语法
  • 5.4.2 不一样的ORDER BY
  • 5.4.3 非必要的PARTITION BY
  • 5.4.4 RANK、DENSE_RANK和ROW_NUMBER
  • 5.4.5 累计计算:将聚集函数用作窗口函数
  • 5.4.6 平移变动的窗口:累计计算的拆分
  • 第6章 复合查询
  • 6.1 利用子查询进行过滤:忧郁的萨茉莉公主
  • 6.1.1 利用子查询进行过滤
  • 6.1.2 利用子查询过滤的关键思路及关联的基础
  • 6.1.3 普遍存在的“中间人”
  • 6.1.4 正序子查询的书写思路
  • 6.1.5 完全限定列名
  • 6.2 初识联结的建立:拆分表的逆向操作
  • 6.2.1 理解主键和外键
  • 6.2.2 关联的设定机制
  • 6.2.3 使用WHERE建立联结
  • 6.2.4 什么是笛卡儿积
  • 6.2.5 等值行与不等值行
  • 6.2.6 内部联结的语法
  • 6.2.7 子查询和联结的区别
  • 6.3 自联结与自然联结:巧妙的复制
  • 6.3.1 建立自联结:巧妙的复制
  • 6.3.2 建立自然联结:不走寻常路的简洁
  • 6.4 外部联结:向左走,还是向右走
  • 6.4.1 不同于以往的关联大表
  • 6.4.2 不同联结方式的比较
  • 6.5 关联子查询的建立:另一只看不见的手
  • 6.5.1 标量子查询
  • 6.5.2 利用关联子查询进行过滤
  • 6.5.3 关联子查询与一般子查询的共性与区别
  • 6.5.4 在检索中使用子查询
  • 6.6 使用视图:飘逸灵动的胶片机
  • 6.6.1 利用子查询进行过滤的限制
  • 6.6.2 从子查询到视图:在FROM语句中建立子查询
  • 6.6.3 创建视图
  • 6.6.4 更新视图
  • 6.6.5 灵活创建的数据集
  • 6.6.6 删除视图
  • 第7章 表的创建与数据更新
  • 7.1 创建表:非凡药剂师协会
  • 7.1.1 考查数据源
  • 7.1.2 进行合理的数据拆分
  • 7.1.3 表与列的命名规则
  • 7.1.4 常用的数据类型
  • 7.1.5 空值的指定
  • 7.1.6 定义主键
  • 7.1.7 选择引擎
  • 7.2 调整表及外键约束:先有鸡,还是先有蛋
  • 7.2.1 重命名表和删除表
  • 7.2.2 增加列、重命名列与删除列
  • 7.2.3 外键约束和定义外键
  • 7.2.4 数据的完整性:合理的信息记录
  • 7.2.5 外键约束的后果
  • 7.2.6 关联表的层次关系:上游表和下游表
  • 7.3 数据的插入:INSERT语句的使用
  • 7.3.1 插入行的两种方式
  • 7.3.2 提供列清单的重要性
  • 7.3.3 空值、默认值和AUTO_INCREMENT的插入方式
  • 7.3.4 同时插入多行数据
  • 7.3.5 在INSERT语句中使用子查询:数据导入
  • 7.4 数据的删除:DELETE语句的使用
  • 7.4.1 使用DELETE删除特定行
  • 7.4.2 删除表中的所有行:MySQL中的安全模式
  • 7.4.3 外键约束的开启和关闭
  • 7.4.4 在DELETE语句中使用子查询
  • 7.5 数据的替换:UPDATE语句的使用
  • 7.5.1 修改数据:替换已有数据
  • 7.5.2 增加数据:替换空值
  • 7.5.3 删除数据:用空值替换已有数据
  • 7.5.4 同时更新多列数据
  • 7.5.5 数据删除方式汇总
  • 7.6 使用事务处理:数据更新前服下的“后悔药”
  • 7.6.1 初识事务处理:START TRANSACTION
  • 7.6.2 事务处理的本质
  • 7.6.3 关闭事务处理的休止符:ROLLBACK和COMMIT
  • 7.6.4 使用保留点:恰到好处的回滚方式
  • 7.6.5 保留点的使用规范和释放
  • 第8章 触发器与存储过程
  • 8.1 触发器(上):“扣动扳机”的正确姿势
  • 8.1.1 初识触发器的安装和使用
  • 8.1.2 理解触发器的触发机制和执行时机
  • 8.1.3 触发器的应用场景、类型与数量限制
  • 8.1.4 初识触发器中的“NEW”:目前没有,但即将有
  • 8.2 触发器(下):忙碌的火车站送车员
  • 8.2.1 初识触发器中的“OLD”:目前有,但即将没有
  • 8.2.2 触发器的功能限制
  • 8.2.3 再谈“NEW”和“OLD”
  • 8.2.4 触发器的执行失败
  • 8.3 存储过程(上):麦克里尼的心病
  • 8.3.1 初识存储过程
  • 8.3.2 初识参数:关键词IN
  • 8.3.3 再探参数:关键词OUT
  • 8.4 存储过程(下):走出低谷
  • 8.4.1 不一样的调用形式
  • 8.4.2 更加智能的存储过程
  • 8.4.3 什么是局部变量
  • 第9章 不断翻新的数据集
  • 9.1 不等值行的妙用
  • 9.2 关联分析
  • 9.3 在CASE表达式中使用聚集函数
  • 9.4 在聚集函数中使用CASE表达式
  • 9.5 行列转换:创建数据透视表
  • 9.6 寻找中位数
  • 第10章 思考与练习
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。