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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • (1)INSERT ... SELECT实现复制 INSERT tdb_goods_1(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; delete t1 //从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 //t1和t2的连接条件 where t1.goods_id>t2.goods_id; //删除id号较大的条目
    查看全部
    0 采集 收起 来源:多表删除

    2018-03-22

  • 显示表结构:show clumns from 表名; 无限分类:即在同一张表中既有父类,又有子类 通过在分类表中再增加多一个字段标识其属于哪一个父类的 ID 来实现 可以通过对同一张数据表的自身连接来进行查询,需要对表标识别名 查找显示父级id对应的名称 SELECT s.type_id ,s.type_name,p.type_name FROM tdb_goods_types AS 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 AS p LEFT JOIN tdb_goods_types AS 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 AS p LEFT JOIN tdb_goods_types AS s ON p.type_id=s.parent_id GROUP BY p.type_name ORDER BY p.type_id;
    查看全部
  • 自定义函数修改时间显示格式 CREATE FUNCTION f1() RETURNS VARCHAR(30) RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点:%i分:%s秒');
    查看全部
  • 1、内连接:在MySQL中JOIN,INNER JOIN,CROSS JOIN是等价的 2、外连接:LEFT JOIN左外连接;RIGHT JOIN右外连接 3、连接条件:使用ON设定连接条件,也可以用WHERE代替 · ON:设定连接条件 · WHERE:进行结果集记录的过滤 4:内连接是返回左表及右表符合连接条件的记录 5、例如:SELECT * FROM tabA JOIN tabB ON tabA.name = tabB.name;表示返回符合ON条件的tabA和tabB的所有字段 内连接 INNER JOIN ... ON....;:SELECT goods_id,goods_name,cate_name FROM tdb_goods INNER JOIN tdb_goods_cate ON tdb_goods.cate_id = tdb_goods_cate.cate_id;
    查看全部
    0 采集 收起 来源:内连接INNER JOIN

    2017-02-03

  • @MySQL——(五)子查询与连接——一OUTER JOIN 1、LEFT JOIN:显示左表全部和左右符合连接条件的记录 2、RIGHT JOIN:显示左右符合连接条件的记录和右表全部记录 3、如果使用LEFT JOIN,左表中存在一条记录A,在右表中没有找到相应的记录,则在返回结果用会出现一条只有记录A中的相应字段内容,其他字段都为NULL在记录(RIGHT JOIN类似).
    查看全部
    0 采集 收起 来源:外连接OUTER JOIN

    2017-02-03

  • 自定义函数
    查看全部
  • 用户自定义函数UDF
    查看全部
  • MySQL中的内置函数库
    查看全部
    0 采集 收起 来源:回顾和概述

    2017-02-03

  • MD5()位web页面做准备,password()修改MySQL登录密码
    查看全部
    0 采集 收起 来源:MySQL 加密函数

    2017-02-03

  • 加密函数
    查看全部
    0 采集 收起 来源:MySQL 加密函数

    2017-02-03

  • INSERT [INTO] tbl_name SET col_name={exprDEFAULT},...//可以使用子查询 INSERT [INTO] tbl_name [(col_name,...)] SELECT ...//将查询结果写入数据表 Eg: INSERT INTO table_name [(column_name)] SELECT column_name2 FROM table_name2 GROUP BY column_name3; CREATE TABLE IF NOT EXISTS tdb_goods_cates( cate_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, cate_name VARCHAR(40) NOT NULL ); SELECT goods_cate FROM tdb_goods GROUP BY goods_cate; //列出所有品牌的分组 DESC tdb_goods_cates; //降序显示出tdb_goods_cates表中的项目名称 INSERT tdb_goods_cates(cate_name) SELECT goods_cate FROM tdb_goods GROUP BY goods_cate;//在表tdb_goods_cates中插入tdb_goods中的goods_cate的分组
    查看全部
  • 单独分析筛选时: 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的用法各有不同:(ANY和SOME用法相同) 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='超级本');
    查看全部
  • 1.子查询是指出现在【其他SQL语句内】的SELECT子句 eg: SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2); 其中,SELECT * FROM t1 ...称为Outer Query[外查询](或者Outer Statement) SELECT column1 FROM t2 称为Sub Query[子查询] ps:Outer Query[外查询]并不单单指SELECT等查询语句,而是所有的SQL语句,当一个SQL语句包含了子查询,则包含子查询的语句就叫外查询 2子查询的条件: 1)始终出现在圆括号内; 2)可以包含多个关键字或者条件;如 distinct、group by、order by、limit、函数等 3)外查询可以是:【SELECT,INSERT,UPDATE,SET或DO】。SQL语句的统称 3.子查询的返回值 子查询可以返回标量、一行、一列或子查询
    查看全部
  • 1.MySQL中默认字符集的设置有四级:服务器级,数据库级,表级 。最终是字段级 的字符集设置。注意前三种均为默认设置,并不代码你的字段最终会使用这个字符集设置。可以通过how create table table ; 或show full fields from tableName; 来检查当前表中字段的字符集设置。 2.表创建后,再修改字段的字符集设置不影响已经插入的数据. 所以才会出在查看字段时出现中文乱码.此时就只能用:set NAMES ‘utf8/gbk’(用字段插入是所用的相应代码,且这个命令行并不影响服务器端数据) 来查看中文内容 当数据库和数据表的编码不一样时,可能插入中文会出现乱码!排插步骤如下:(以utf8为例) 第一步:SHOW CREATE DATABASE XXXX;(我的是SHOW CREATE DATABASE test;) 查看你创建的 数据库是否是:DEFAULT CHARACTER SET utf8 第二步:show create table xxxx 查看你创建的数据表是否是 DEFAULT CHARSET=UTF8 第三步: 打开my.ini 在[client]节点下添加 default-character-set=utf8 在[mysqld]节点下添加 character-set-server=utf8 collation-server=utf8_general_ci 保存,重启mysql! 再 mysql> show variables like 'char%';查看是否是下面一样: | character_set_client | utf8 | character_set_connection | utf8 | character_set_database | utf8 | character_set_filesystem | binary | character_set_results | utf8 | character_set_server | utf8 | character_set_system | utf8 | character_sets_dir | /opt/mysql-cluster/share/mysql/charsets/
    查看全部
    1 采集 收起 来源:数据准备

    2018-03-22

  • 中文乱码——SET NAMES GBK;
    查看全部
    0 采集 收起 来源:MySQL 聚合函数

    2017-02-03

举报

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

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