10.用通配符进行过滤----------》like
1.like操作符:like操作符相较于以前常规的操作符最大的区别就是:以前常规的 操作符需要知道值,like 操作符可以实现在未知的情况下进行操作。 2.通配符需要和操作符进行协助才能生效
2.百分号(%)通配符,在搜索串中,%表示任何字符出现任意次数。 (1).%放在字符的前面,就是说:以什么什么结尾。 (2).%放在字符的后面,就是说:以什么什么开头。 (3).%在字符的前面和后面,就是说:以什么什么在中间 (4).先后关系
3.下划线(_)通配符:下划线的用处和%一样,但它只匹配单个字符,而不是多个字符
4.方括号[],通配符:用来指定一个字符集。^(脱字号) select *from `student` where qq like '[AB]%';---》查找以A或B开头的QQ select *from `student` where qq like '[^AB]%';---》查找不以A或B开头的QQ
5.通配符效率低,可以不用就不用。
11.创建计算字段
1.拼接字段: select concat(name,id) from `student`;
12.别名:-----AS
AS '别名':------->有利于我们进行阅读
13.去重---------distinct
1.distinct 去重的操作。
14.分页子句------limit
1.分页函数放在排序子句的后面: where ----->like --->order by---->limit eg:select *from student order by id limit 0,3; 2.起始索引 起始索引=(n-1)*页距
15.字符串函数/日期/拼接
1.concat()----->字符串拼接 2.char_length()---->字符串拼写 3.innert(str,1,2,str1)----->用str1替换str,从第一个字符开始到第二个字符 4.instr('str','s')--------->查询s所在字符串中第几个位置。 5.replace(str,a,b)--------->用b替换出现在str字符串中的a字符 6.select current_date();----》当前日期 7.select curdate()-----》当前日期 8.select now();------》当前年月日时间 9.select sysdate();----》系统时间 10. select second(now());-----》当前秒 11. select user();--------》当前用户
1-3
4
5-11
16.聚合函数不允许在where后使用/on用于连接不用于判断
1.聚合函数不允许在where后使用,如果非要进行判断,需要在having后使用
17.数据库级别的MD5加密(扩展)
1.什么是MD5?
一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald LinnRivest)设计,于1992年公开,用以取代MD4算法。这套算法的程序在 RFC 1321 标准中被加以规范。1996年后该算法被证实存在弱点,可以被加以破解,对于需要高度安全性的数据,专家一般建议改用其他算法,如SHA-2。2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥认证或是数字签名等用途。
1.主要作用:增强算法复杂度和不可逆性; (1).MD5不可逆,具体的值的md5是一样; (2).破解密码原理:把简单的密码都放在一个字典中,如果对MD5破解成功, 那么就返回正确的密码,否则返回MD5加密后的伪密码
1.在插入数据之后,再进行加密的操作: update admin set password=md5(password) where id=1;--->对id为1d的数据进行加密 update admin set password=md5(password)------》对所有数据进行加密
create table admin( id int(11) auto_increment, name varchar(20) not null, password varchar(20) not null, primary key(id) ); insert into admin values(null,'李黑',md5('123456')); update admin set password=md5(password) where id=1;
2.在插入数据的同时,进行MD5加密的操作 insert into admin values(null,'李黑',md5('123456'));
3.MD5,加密后密码如何进行校验? select *from admin where password=md5('123456');