第3章 聚合与排序:3-2 对表进行分组 ● 使用GROUP BY子句可以像切蛋糕那样将表分割.通过使用聚合函数和GROUP BY子句,可以根据“商品种类”或者“登记日期”等将表分割后再进行汇总.● 聚合键中包含NULL时,在结果中会以“不确定”行(空行)的形式表现出来. ● 使用聚合函数和GROUP BY子句时需要注意以下4点.① 只能写在SELECT子句之中② GROUP BY子句中不能使用SELECT子句中列的别名③ GROUP BY子句的聚合结果是无序的④ WHERE子句中不能使用聚合函…
我认为<SQL基础教程(第2版)>非常适合数据库学习的初学者.论述的角度是读者的角度,会换位思考到读者在看到这一段时候会发出怎样的疑问,非常难得:原始数据的例题只有一道,但是可以反复从不同角度提出不同的问题进行处理,避免了眼花缭乱之感:习题也比较有趣,有的问题反而是属于问题本身其实是个陷阱的,考验初学者. 畅销书<SQL基础教程>第2版,介绍了关系数据库以及用来操作关系数据库的SQL语言的使用方法.书中通过丰富的图示.大量示例程序和详实的操作步骤说明,让读者循序渐进地掌握SQL的基…
3-1 对表进行聚合查询 ● 使用聚合函数对表中的列进行计算合计值或者平均值等的汇总操作.● 通常,聚合函数会对NULL以外的对象进行汇总.但是只有COUNT函数例外,使用COUNT(*)可以查出包含NULL在内的全部数据的行数.● 使用DISTINCT关键字删除重复值. ■聚合函数 COUNT:   计算表中的记录数(行数)SUM:计算表中数值列中数据的合计值AVG:计算表中数值列中数据的平均值MAX:求出表中任意列中数据的最大值MIN: 求出表中任意列中数据的最小值 如上所示,用于汇总的函数…
第一章 快速改造:基础知识 01:整除.乘方 (Python3.0之前 如2.7版本) >>> 1/2 ==>0 1/2整除,普通除法: 解决办法1: 1.0/2.0  ==>0.5 解决办法2:from _future_ import division 1/2  ==>0.5 // 表示整除 >>>1//2 ==>0 浮点数//浮点数,结果依然是整除结果 >>>1.0//2.0 ==>0.0 实际操作截图: ** 表示乘…
写在前面:本文主要注重 SQL 的理论.主流覆盖的功能范围及其基本语法/用法.至于详细的 SQL 语法/用法,因为每家 DBMS 都有些许不同,我会在以后专门介绍某款DBMS(例如 PostgreSQL)的时候写到. 第 1 章 DBMS 与 SQL 1.DBMS 是什么 ? 数据库管理系统(Database Management System, DBMS) 是用来管理数据库的计算机系统. 本文采用 PostgreSQL 为 DBMS. 2.为什么要用 DBMS ? 问:为什么不用 文本文件 或…
SQL Server2012 T-SQL基础教程--读书笔记(8 - 10章) 示例数据库:点我 CHAPTER 08 数据修改 8.1 插入数据 8.1.1 INSERT VALUES 语句 8.1.2 INSERT SELECT 语句 8.1.3 INSERT EXEC 语句 8.1.4 SELECT INTO 语句 8.1.5 BULK INSERT 语句 8.1.6 标识列属性和序列对象 8.1.6.1 标识列属性 8.1.6.2 序列对象 8.2 删除数据 8.2.1 DELETE 语…
[SQL基础教程] 5-1视图 视图和表 从SQL角度看视图就是一张表 视图与表的差别 表保存了实际的数据,视图保存的是SELECT语句: 视图的优点 节省存储空间: 将常用的Select 语句保存成视图. 视图中的数据会随着原表中数据变化而更新. 创建视图 CREATE VIEW 视图名称(<视图列名1>,<视图列名2>,<视图列名3>...) AS SELECT语句 视图就是保存好的SELECT语句 基于视图的SELECT查询语句 SELECT a,b FROM v…
[SQL基础教程] 4 数据更新 4-4 事务 事务 需要在同一处理单元中执行的一系列更新处理的集合 创建事务 事务开始语句; DML语句1; DML语句2; . . . 事务结束语句; 事务开始语句 // SQL Server/ PostgreSQL BEGIN TRANSACTION // MySQL START TRANSACTION 事务结束语句 COMMIT ROLLBACK 回滚数据库到事务开始状态. 事务处理何时开始和结束 几乎所有的数据库产品都不需要开始指令. 自动提交模式 非自…
[SQL基础教程] C4 数据更新 4-3 数据的更新(UPDATE) UPDATE UPDATE <表名> SET <列名> = <表达式>; UPDATE <表名> SET <列名> = <表达式> WHERE <条件>; PS : 注意SET子句和WHERE子句的顺序. 用NULL清空数据 用UPDATE清空数据,仅限于非NOT NULL约束的列. 多列UPDATE 语句 UPDATE <表名> SET…
[SQL基础教程] C4 数据更新 4-2 数据删除(DELETE) DROP TABLE / DELETE DROP TABLE - 完全删除表 DELETE - 仅删除数据,保留表容器 DELETE DELETE FROM <表名> DELETE FROM <表名> WHERE 条件…