2023/04/25 周二
定义:数据库、表、主键、自动增量
使用:检索、排序检索、过滤数据(空值检查怎么做?)、数据过滤、IN操作符、NOT操作符、通配符过滤(like+%, _)、正则表达式进行搜索(regexp)、计算字段、使用函数处理数据、汇总数据、分组数据(where在数据分组前过滤行,having在数据分组后过滤分组)、使用子查询、联结表、高级联结、组合查询、全文本搜索、插入数据、更新和删除数据
检索数据:
①检索单列
②检索多列
③检索所有列
④检索不同的行(限制条件)
检索出某一列的不同的值,distinct
检索出限定数量的行
limit 5 返回从第1行开始数的五行
limit 5,5 返回从第六行开始数的五行
⑤限制结果
⑥使用完全限制的表名
排序检索数据:order by(升序),降序用desc, 如order by Sname desc, 并且降序只针对于前面那一个列,其他列仍然是升序,如果都想降序,每个列后都要写上desc
按多个列排序:order by 后可跟多个列,将会自动按照列进行排序
过滤数据:where, 易忘:where id between 5 and 10
空值检查: where id is null
数据过滤:搜索性更强的过滤, 多个where子句
where 可与and 或者or
多个where搜索的次序: 先and,再or
IN操作符:表示范围
NOT操作符:否定它之后的所有条件
通配符过滤:like + %
_ 下划线通配符
正则表达式:regexp
|
[123456789]
[1-9] [a-z]
匹配特殊字符 regexp '\\.'
定位符: ^ $
2023/04/26 周三
计算字段:拼接:concat
删除数据末尾多余的字段:RTrim
使用别名:AS
算术计算:+ - * /
使用函数处理数据:
文本处理函数:RTrim() 、RTrim()、Upper() 、Lower()、Length()、
Left()、Right()、Locate()子串、SubString()子串字符
Soundex()串的soundex值,模糊匹配发音
日期和时间处理函数:Date(order_date)仅仅匹配“order_date”列中的日期部分
如果是范围,可以使用between and,或者是通过Year()、Month()精确判断
数值处理函数:Abs()、Cos()、Exp()等
汇总数据:聚集函数: COUNT() 行数
MAX() 某列最大值
MIN() 某列最小值
AVG() 某列平均值
SUM() 某列之和
聚集不同值:distinct
分组数据:
创建分组:group by, 按照分组的列进行排序并分组
过滤分组:having
使用子查询:
利用子查询过滤
子查询作为计算字段
联结表:关系表:把信息分解成多个表,一类数据一个表,再通过某些常用的指互相关联
内部联结:inner join on
高级联结:
自联结
自然联结:排除相同的列多次出现,每个列只返回一次
外部联结:分为左联结、右联结
组合查询:union union all(返回所有匹配行,重复的也不取消)
全文本搜索:MyISAM支持全文本搜索,InnoDB不支持全文本搜索
select , Match(),Against()
插入数据:
insert into Table(name, class)
values( ), values() ;
insert ... select...
更新和删除数据:
更新数据:update ... set A='', B='', c=' ' where...
删除数据:delete from ... where