为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
与MySQL的零距离接触_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 自定义函数
    查看全部
    0 采集 收起 来源:课程回顾

    2017-11-06

  • 加密函数: 1.MD5():信息摘要算法,为以后的Web页面做准备,尽量使用MD5() 举例 SELECT MD5('admin'); MD5对admin进行了加工,并返回加工后的数据 2.PASSWORD():密码算法,可通过PASSWORD('密码')修改密码,该函数会返回加密的一串数字(5.7版本会自动调用) 举例 SET PASSWORD=PASSWORD(‘dimitar’); 把密码修改成dimitar。
    查看全部
    1 采集 收起 来源:MySQL 加密函数

    2017-11-06

  • 1.CONCAT() ,字符连接<br> SELECT CONCAT('a','-','b'); 结果为:a-b<br> 2.CONCAT_WS(), 使用指定的分隔符进行字符连接<br> SELECT CONCAT_WS('|','A','B','C'); 结果为: A|B|C<br> 3.FORMAT() 数字格式化 SELECT FORMAT(12560.7,2); 结果:12,560.70 SELECT FORMAT(12560.78,1); 结果:12,560.8 4.LOWER() 转换成小写字母 5.UPPER() 转换成大写字母 6.LEFT() 获取左侧字符 SELECT LEFT('mysql',2); 结果:my 7.RIGHT() 获取右侧字符 8.LTRIM() 删除前导空格(=LEFT TRIM()) 9.RTRIM() 删除后续空格 10.TRIM()删除前后两边的空格,还可以删除指定的前导和后续的字符,不能删除中间的字符 SELECT TRIM(LEADING'?','??MYSQL????'); 结果:MYSQL???? SELECT TRIM(TRAILING'?','??MYSQL????'); 结果:??MYSQL SELECT TRIM(BOTH'?','??MYSQL???'); 结果:MYSQL 11.REPLACE() 替换字符 SELECT REPLACE('??MYSQL???','?','-'); 结果:--MYSQL--- 12. SUBSTRING(string,offset,length) 截取字符串 SELECT SUBSTRING('MYSQL',2,3); 结果:SQL 13.[NOT]LIKE 模糊匹配 (%):代表任意个字符,0个或多个 (_):代表任意一个字符,只有一个 SELECT name FROM test WHERE name LIKE'%O%'; 结果:输入name 中带‘O’的name SELECT name FROM test WHERE name LIKE'%1%%' ESCAPE'1'; 找到中间带% 的匹配name
    查看全部
    3 采集 收起 来源:MySQL 字符函数

    2018-03-22

  • (1)INSERT ... SELECT实现复制 INSERT tdb_goods(goods_name,cate_id,brand_id) SELECT goods_name,cate_id,brand_id FROM tdb_goods WHERE goods_id IN (19,20); (2)查找重复记录 SELECT goods_id,goods_name FROM tdb_goods GROUP BY goods_name HAVING count(goods_name) >= 2; (3) 删除重复记录 DELETE t1 FROM tdb_goods AS t1 LEFT JOIN (SELECT goods_id,goods_name FROM tdb_goods GROUP BY goods_name HAVING count(goods_name) >= 2 ) AS t2 ON t1.goods_name = t2.goods_name WHERE t1.goods_id > t2.goods_id;
    查看全部
    0 采集 收起 来源:多表删除

    2018-03-22

  • 显示表:show clumns from 表名; 无限分类:即在同一张表中既有父类,又有子类 通过在分类表中再增加多一个字段标识其属于哪一个父类的 ID 来实现 可以通过对同一张数据表的自身连接来进行查询,需要对表标识别名 查找显示父级id对应的名称 select s.type_id ,s.type_name,p.type_name As parent_id from tdb_goods_types s left join tdb_goods_types p on s.parent_id=p.type_id; 查找子级对应的名称 select p.type_id ,p.type_name,s.type_name from tdb_goods_types p left join tdb_goods_types s on p.type_id=s.parent_id; 查找有多少子级 select p.type_id ,p.type_name,COUNT(s.type_name) child_count from tdb_goods_types p left join tdb_goods_types s on p.type_id=s.parent_id GROUP BY p.type_name ORDER BY p.type_id;
    查看全部
  • MySQL语句的规范
    查看全部
  • 创建表的时候直接添加数据
    查看全部
  • 将查询的结果写入到数据表
    查看全部
  • 子查询---in not in in 相当于=any not in 相当于 !=all 或者<>all ——不等于、不包含 子查询----exists not exists ——用得比较少 子查询返回任何行 exists 返回 true 反之 返回 false -- = ANY 或 = SOME 等价于 IN
    查看全部
  • 单独分析筛选时: SELECT AVG(goods_price) FROM tdb_goods; //AVG函数代表求其平均值// SELECT ROUND(AVG(goods_price),2) FROM tdb_goods; //round(@,#)代表输出格式为@数小数点后#位输出// SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=5391.30; //输出价格大于5391.30的id、name、price// 综合起来运用子查询时: SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=(SELECT ROUND(AVG(goods_price),2) FROM tdb_goods); //查找价格大于平均值的商品// SELECT goods_price FROM tdb_price WHERE goods_cate='超级本'\G; //检索结果非唯一// 对于ANY、SOME、ALL的用法各有不同: SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=ANY (SELECT goods_price FROM tdb_goods WHERE goods_cate='超级本'); SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=ALL (SELECT goods_price FROM tdb_goods WHERE goods_cate='超级本'); SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>=SOME (SELECT goods_price FROM tdb_goods WHERE goods_cate='超级本');
    查看全部
  • 最常用的select的用法
    查看全部
    0 采集 收起 来源:小结

    2017-11-06

  • having 语句分组,用在group by后面追加条件,判断式中的字段是必须出现在前面select中的 或者是可以包含没有出现在前面查询中的字段的一个聚合函数count(),max()等等 [HAVING when where_condition] SELECT sex FROM users GROUP BY 1 HAVING age > 35; //有错 SELECT sex, age FROM users GROUP BY 1 HAVING age > 35; SELECT sex FROM users GROUP BY 1 HAVING count(id) >= 2; (这条指令,指按照sex分组,分成了两组sex=0和sex=NULL,条件id数大于2的留下显示,显然sex=0个数有8>2故留下,而sex=NULL个数为1,不满足条件,故不显示。如果条件改成count(id)>=1,则会显示sex为0和NULL两个分组。) 聚合函数永远只有一个返回结果 count是记录个数的,
    查看全部
  • 约束以及修改数据表总结
    查看全部
    0 采集 收起 来源:小结

    2017-11-06

  • 尽量不要改变表名或者列名,因为会影响已使用(引用)过它做的图表
    查看全部
  • 删除列:ALTER TABLE tb1_name DROP[COLUMN] col_name; 添加多列:ALTER TABLE tb1_name ADD[COLUMN] (col_name column_definition,...); 添加单列:ALTER TABLE tb!_name ADD[COLUMN] col_name column_definition [FIRST|AFTER col_name]; 删除记录:DELETE FROM province WHERE id=3; 验证表中是否有相应的记录:SELECT * FROM province;
    查看全部

举报

0/150
提交
取消
课程须知
要想学习本课程,你只需要知道数据库是个什么东东就足够了,是不是很easy?!
老师告诉你能学到什么?
1、MySQL安装与配置 2、数据类型 3、流程控制与运算符 4、DDL、DCL、DQL、DML 5、常用函数 6、表类型(存储引擎) 7、图形化工具
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!