
MySQL学习笔记
或是深海
天行健君子以自强不息,地势坤君子以厚德载物
展开
-
MySQL如何生成大量日期
来自《SQL学习指南 第二版》笔记有表transaction如下:mysql> select * from transaction;+--------+---------------------+------------+-------------+--------+---------------+---------------------+---------------------...原创 2020-03-23 21:44:05 · 507 阅读 · 0 评论 -
MySQL--必知必会补充知识
首先,先创建所需要的表。CREATE TABLE Products( prod_id char(10) NOT NULL , vend_id char(10) NOT NULL , prod_name char(255) NOT NULL , prod_price decimal(8,2) NOT NULL , prod_desc...原创 2019-11-04 22:26:26 · 554 阅读 · 0 评论 -
MySQL--外连接的用法
本文根据《SQL进阶教程》([日]MICK/著 吴炎昌/译)所写笔记。数据库的一个难题是无法将SQL语句的执行结果转换为想要的格式。本节,我们将通过学习格式转换中具有代表性的行列转换和嵌套式侧栏的生成方法,深入理解一下其中骑着重要作用的外连接。全外连接外连接有三种:左外连接、右外连接、全外连接其中,左外连接和右外连接没有什么功能上的区别。用作主表的表写在运算符左边时用左外连接,写在运算符右...原创 2019-10-20 22:19:56 · 9308 阅读 · 0 评论 -
MySQL--HAVING子句的力量
本文根据《SQL进阶教程》([日]MICK/著 吴炎昌/译)所写笔记。寻找缺失的编号现在有一张表seqtbl,虽然编号那一列叫做连续编号,但实际上编号并不是连续的,缺失4和7.我们现在要做的就是查找是否有缺失值:CREATE TABLE SeqTbl(seq INTEGER PRIMARY KEY, name VARCHAR(16) NOT NULL);INSERT INTO Se...原创 2019-10-17 22:27:55 · 361 阅读 · 0 评论 -
MySQL--三值逻辑和null
本文所用的例子和语法均参考《SQL基础教程》第2版。排中律不成立排中律就是指不认可中间状态,对命题真伪的判断黑白分明。首先看一个排中律不成立的例子,如果排中律成立,那么下面的查询结果应该能选出所有行。-- 我们首先创建一个表CREATE TABLE Students(name VARCHAR(16) PRIMARY KEY, age INTEGER );INSERT INTO ...原创 2019-10-15 22:45:24 · 626 阅读 · 0 评论 -
MySQL--自然连接的用法
本文根据《SQL进阶教程》([日]MICK 吴炎昌/译)所写笔记。之前学习的内连接,外连接,交叉连接都是针对不同表的,本节我们学习自联结,是针对相同表的连接。可重排列、排列、组合我们先创建一张Products表,。在生成用于查询销售额的报表时,我们有时候会需要获得这些商品的组合:CREATE TABLE Products(name VARCHAR(16) PRIMARY KEY,...原创 2019-10-15 21:48:58 · 9476 阅读 · 1 评论 -
MySQL--case表达式
本文根据《SQL进阶教程》([日]MICK 吴炎昌/译)所写笔记。case 表达式概述我们用case来表达条件分支。case表达式有简单case表达式和搜索case表达式。表达式写法如下:-- 简单case表达式case sex when '1' then '男' when '2' then '女'else '其他' end-- 搜索case表达式case whe...原创 2019-10-13 23:09:16 · 995 阅读 · 0 评论 -
MySQL--SQL高级处理
本文根据《SQL基础教程》第二版写,里面的概念、代码、例子均来自此书。1 窗口函数窗口函数可以进行排序、生成序列号等一般的聚合函数无法实现的高级操作理解partition by和order by 这两个关键字什么是窗口函数窗口函数也称OLAP(online analytical procesing)函数,是对数据库数据进行试试分析处理的函数。很可惜,MySQL不支持窗口函数...原创 2019-10-11 16:33:58 · 245 阅读 · 0 评论 -
MySQL--集合运算
本文根据《SQL基础教程》第二版写,里面的概念、代码、例子均来自此书。1 表的加减法集合运算就是对满足同一规则的记录进行的加减等四则运算集合运算符有union(并集)、intersect(交集)、except(差集)集合运算符可以去除重复行如果希望集合运算符保留重复行,需要使用all选项什么是集合运算集合在数据库中表示记录的集合。表、视图和查询的执行结果都是记录的集合。所谓集合运...原创 2019-10-10 22:03:17 · 4312 阅读 · 2 评论 -
MySQL--函数、谓词、case表达式
1 各种各样的函数根据用途,函数大致也可以分为算术函数、字符串函数、日期函数、转换函数(用来转换数据类型和值的函数)、聚合函数(用来进行数据聚合的函数)聚合函数基本上只包含count、sum、avg、max、min这5种,其他种类的函数总数则超过200多种。算术函数包括加减乘除,这些算术运算符具有“根据输入值返回相应输出结果”的功能。常用numeric(全体位数,小数位数),通过此函数来...原创 2019-10-06 23:06:31 · 433 阅读 · 0 评论 -
MySQL--复杂查询
1 视图视图和表的区别:表中保存的是实际数据,视图中保存的是select语句(视图本身并不存储数据)使用视图,可以轻松完成跨多表查询数据等复杂操作创建视图需要用create view语句可以将常用的select语句做成视图来使用视图包含“不能使用order by”和“可对其进行的有限制的更新”两项限制删除视图用drop view语句视图和表的区别就是是否保存了实际的数据。我们在...原创 2019-10-06 19:18:16 · 327 阅读 · 0 评论 -
MySQL--数据更新
本文根据《SQL基础教程》第二版写,里面的概念、代码、例子均来自此书。前面学的select语句并不会改变表中的数据,只是用于读取。数据更新大致可以分为插入(insert)、删除(delete)、更新(update)。1 数据的插入(insert语句的使用方法)使用insert语句可以向表中插入数据(行)。将列名和值用逗号隔开,分别阔在()内,这种形式称为清单。对表中所有列进行inser...原创 2019-10-04 21:39:00 · 604 阅读 · 0 评论 -
MySQL--聚合与排序
1 对表进行聚合查询原创 2019-10-04 15:05:16 · 1530 阅读 · 0 评论 -
MySQL--表的操作
表中的数据库对象包括列、索引、触发器。在创建表时,必须指定列的名字和数据类型。 表的操作包括创建表、查看表、删除表、修改表。原创 2019-10-02 22:08:33 · 468 阅读 · 0 评论