1. 数据查询语言DQL
    数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块:SELECT <字段名表>FROM <表或视图名>WHERE <查询条件>
    2 .数据操纵语言DML
    数据操纵语言DML主要有三种形式:1) 插入:INSERT2) 更新:UPDATE3) 删除:DELETE
    3. 数据定义语言DDL
    数据定义语言DDL用来创建数据库中的各种对象——-表、视图、索引、同义词、聚簇等如:CREATE TABLE/VIEW/INDEX/SYN/CLUSTER| | | | |表 视图 索引 同义词 簇
    DDL操作是隐性提交的!不能rollback
    4. 数据控制语言DCL
    数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。如:1) GRANT:授权。
    LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。
    可以实现分页显示

    1. //为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:
    2. SELECT *FROM table LIMIT 95,-1; // 检索记录行 96-last.
    3. //如果只给定一个参数,它表示返回最大的记录行数目:
    4. SELECT *FROM table LIMIT 5; //检索前 5 个记录行

    使用子查询时的注意事项有哪些?
    子查询语句必须放在括号中
    http://c.biancheng.net/view/7380.html
    修改表名
    ALTERTABLE <旧表名> RENAME [TO] <新表名>;
    添加字段
    ALTERTABLE表名 ADD字段名 数据类型 [属性];
    修改字段
    ALTERTABLE表名 CHANGE原字段名 新字段名 数据类型[属性];
    删除表中的字段
    ALTERTABLE表名 DROP字段名;
    次向表中插入一条记录
    MySQL 第三章 - 图1
    INSERT INTO 表名 [(字段名列表)] VALUES (值列表);
    MySQL 第三章 - 图2
    字段名是可选的,如省略,则依次插入所有字段
    多个列表和多个值之间使用逗号分隔
    值列表和字段名列表一一对应
    如果插入表中的部分字段数据,则字段名列表必填
    MySQL 第三章 - 图3
    INSERT INTO patient (password, birthdate, gender, patientName,
    phoneNum, email, identityNum, address)
    VALUES (‘123456’, ‘1985-06-07’, ‘女’, ‘夏颖’, ‘13800000001’,
    ‘xiaying@163.com’, ‘110000198506071100’, ‘天津市’);
    MySQL 第三章 - 图4
    DML语句——将查询结果插入到新表2-1
    CREATE TABLE 新表(SELECT 字段1, 字段2, ……FROM 原表);
    MySQL 第三章 - 图5
    MySQL 第三章 - 图6
    MySQL 第三章 - 图7
    MySQL 第三章 - 图8
    常用函数——字符串函数

    函数名 作 用 举 例
    CONCAT(
    str1,str1,…,strn)
    连接字符串str1、str2、……、strn为一个完整字符串 SELECT CONCAT(
    ‘MySQL’,’ is powerful.’);
    返回:MySQL is powerful.
    LOWER(str) 将字符串str中所有字符变为小写 SELECT LOWER(
    ‘MySQL is powerful.’);
    返回:mysql is powerful.
    UPPER(str) 将字符串str中所有字符变为大写 SELECT UPPER(
    ‘MySQL is powerful.’);
    返回:MYSQL IS POWERFUL.
    SUBSTRING(
    str,num,len)
    返回字符串str的第num个位置开始长度为len的子字符串 SELECT SUBSTRING(
    ‘MySQL is powerful.’,10,8);
    返回:powerful
    INSERT(
    str,pos,len,newstr)
    将字符串str从pos位置开始,len个字符长的子串替换为字符串newstr SELECT INSERT(
    ‘MySQL is powerful.’,10,0,’very ‘);
    返回:MySQL is very powerful.

    常用函数——时间日期函数:

    CURDATE() 获取当前日期 SELECT CURDATE();
    返回:2020-08-03
    CURTIME() 获取当前时间 SELECT CURTIME();
    返回:16:54:40
    NOW() 获取当前日期和时间 SELECT NOW();
    返回:2020-08-03 16:55:00
    WEEK(date) 返回日期date为一年中的第几周 SELECT WEEK(NOW());
    返回:31
    YEAR(date) 返回日期date的年份 SELECT YEAR(NOW());
    返回:2020
    HOUR(time) 返回时间time的小时值 SELECT HOUR(NOW());
    返回:16
    MINUTE(time) 返回时间time的分钟值 SELECT MINUTE(NOW());
    返回:56
    DATEDIFF(date1,date2) 返回日期参数date1和date2之间相隔的天数 SELECT DATEDIFF(NOW(),
    ‘2019-8-8’);
    返回:361
    ADDDATE(date,n) 计算日期参数date加上n天后的日期 SELECT ADDDATE(NOW(),5);
    返回:2020-08-07 16:57:28
    UNIX_TIMESTAMP(date) 将日期转换成时间戳 SELECT UNIX_TIMESTAMP( 2020-9-1);
    返回:1598889600

    常用函数——聚合函数:

    COUNT() 返回某字段的行数
    MAX() 返回某字段的最大值
    MIN() 返回某字段的最小值
    SUM() 返回某字段的和
    AVG() 返回某字段的平均值

    分页查询:
    SELECT <字段名列表>FROM <表名或视图>
    [WHERE <查询条件>]
    [GROUP BY <分组的字段名>] [HAVING <条件>]
    [ORDER BY <排序的字段名> [ASC 或 DESC]]
    [LIMIT][位置偏移量,]行数];
    什么是子查询3-3
    MySQL 第三章 - 图9
    SELECT …… FROM 表1
    WHERE 字段1 比较运算符 (子查询);
    计算年级的函数
    FLOOR(DATEDIFF(CURDATE(),birthDate)/365)
    MySQL 第三章 - 图10