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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 日期时间函数 NOW() /*当前时间 含日期时间 CURDATE() /* 当前日期 只有日期 CURTIME() /*当前时间 值有时间 DATE_ADD() /*时间增减或减少 SELECT DATE_ADD('2014-3-12',INTERVAL 365 DAY); ==>2015-3-12 /*在原有给定的时间上增加365天 INTERVAL增加可以增加负值 单位 year ,month,week,day SELECT DATEDIFF('2014-1-1','2015-1-1') ==> -365 /*时间差值计算 单位为日 前面时间减去后面时间 SELECT DATE_FORMAT('2014-3-2','%m/%d/%d'); ==> 03/02/2014 /*日期格式转换
    查看全部
  • SELECT 15 BETWEEND 1 AND 20 ==> 1 /*15 在1到20之间 ,返回值是1 SELECT 15 NOT BETWEEND 1 AND 20 ==>0 /* 15在1到20之间,条件不成立 返回值是0 SELECT 10 IN(5,10,15) ==> 1 /*值是否在给定的数值中,如果在返回1,不在返回0 条件成立为1不成立为0 SELECT 10 NOT(5,10,15) ==> 0 /*数值是否不在给定的数值中,如果不在返回1,在返回0 条件成立为1不成立为0 SELECT NULL IS NULL ==>1 /* 空是空 条件成立返回1,不成立返回0 SELECT '' IS NULL ==> 0 /* 除了NULL空其它都是非空 返回都是1 SELECT * FROM ABC WHERE ID IS NOT NULL;
    查看全部
  • CEIL(3.01) ==>4 /*有n.xx 都是n+1 进一取整 向上取整 FLOOR(3.99) ==>3 /*取n.xx 都是n 舍一取整 向下取整 SELECT 3 DIV 4 ==> 0 /*整数除法 SELECT 3/4 ==>0.75 /*除法 SELECT 21 MOD 2 ==>1 /*取余数(取模)整数,小数都可以 SELECT 21 % 2 ==>1 /*取余数(取模)整数,小数都可以 SELECT POWER(3,4) ==>81 /*3的4次方 幂运算 SELECT ROUND(3.1415926,4) ==>3.142 /*四舍五入 SELECT TRUNCATE(123.89,1) ==>123.8 /*截取小数点后的位置 SELECT TRUNCATE(123.89,0) ==>123 /*截取小数点后的位置,0位为整数部分 SELECT TRUNCATE(123.89,-1) ==>120 /*截取-1,从个位起去掉后面的数值替换为0
    查看全部
  • SELECT SUBSTRING('MySQL',-1) L (12)[NOT] LIKE 模式匹配 百分号%代表任意个字符; 下划线_代表任意一个字符 SELECT 'MySQL' LIKE 'M%'; first_name tom% last_name 123 SELECT * FROM test WHERE first_name LIKE '%o%'; SELECT * FROM test WHERE first_name LIKE '%1%%' ESCAPE '1'; // 查找包含% 符号的信息
    查看全部
    0 采集 收起 来源:MySQL 字符函数

    2015-09-08

  • (1)CONCAT函数 字符连接 SELECT CONCAT('IMOOC','-','MySQL'); SELECT CONCAT (first_name,last_name) AS fullname FROM test; (2)CONCAT_WS() 使用指定的分隔符进行字符连接,(第一个位置指定分隔符,后面的 为分割的内容) SELECT CONCAT_WS('%','asdsa','asdasda'); //第一个是指定的分隔符 (3)FORMAT() 数字格式化 例如:SELECT FORMAT(123560.75,2); 123,560.75 (4)LOWER() 转化小写 (5)UPPER() 转换大写 SELECT UPPER('mysql'); (6)LEFT() 获取左侧字符 SELECT LEFT ('MYSQL',2); MY SELECT LOWER(LEFT('mYsql',2)); //函数嵌套 (7)RIGHT()获取右侧字符 (8)LENGTH()取得字符串长度 LENGTH('MYSQL’); (9)TRIM() 删除前导、后续空格或者指定字符: SELECT TRIM(' MySQL '); SELECT TRIM(LEADING '?' FROM '??MYSQL???'); //删除前导? SELECT TRIM(TRAILING '?' FROM '??MYSQL???'); //删除后续? SELECT TRIM(BOTH '?' FROM '??MYSQL???'); //前后均删除,但不能删除中间的? (10)REPLACE() 替换 : SELECT REPLACE('MY???SQL','?',''); //将问号换成空白,即去掉? SELECT REPLACE('MY???SQL','?','~~'); //可以将n个?换成m个组合符号 (11)SUBSTRING() 字符串截取 SELECT SUBSTRING('mYSQL',1,2); //从字符串中的第一个位置开始截取2个字符mY SELECT SUBSTRING('mYSQL',3); //SQL 从第3的位置开始截取到结束 SELECT SUBSTRING('mYSQL',-2); //QL 从倒数第2位开始截取到结束
    查看全部
    0 采集 收起 来源:MySQL 字符函数

    2015-09-08

  • 子查询:出现在sq语句中的select子句,而子查询必须要出现在小括号()内,他的外层可以是select语句,insert语句,update语句,delete语句,而且在子查询中可以包含多个关键词:group by ,order by ,limit以及相关函数。。。引发子查询的情况有比较运算符 ,in(NOT)in运算符,exist(NOT EXIST)引发的子查询 连接:连接分为外连接和内连接,内连接主要显示的是左表和右表当中都符合连接条件的记录。外链接有分为左外连接和右外连接,左外连接显示的是左表中的全部记录和右表符合条件的记录,右外连接和左外连接相反,mq中的select,多表更新和删除都可以用到。。内连接,左,右连接。。 create语句中的select ,insert select 语句。。。。。。。 下面为接下来的学习内容
    查看全部
    0 采集 收起 来源:回顾和概述

    2015-09-08

  • 唯一键可以为空值但不得重复
    查看全部
  • 一张表中只能存在一个主键,保证记录的唯一性
    查看全部
  • 默认为NULL,可以指定NOT NULL
    查看全部
  • (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) 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;
    查看全部
  • 外连接: 以左外连接为例: A LEFT JOIN B join_condition 数据表B的结果集依赖于数据表A 数据表A的结果集根据左连接条件依赖所有数据表(B表除外) 左外连接条件决定如何检索数据表B(在没有指定WHERE条件的情况下) 如果数据表A的某条记录符合WHERE条件,但是在数据表B不存在符合连接条件的记录,将生成一个所有列为空的额外的B行 内连接: 使用内连接查找的记录在连接数据表中不存在,并且在WHERE子句中尝试一下操作:column_name IS NULL 。如果 column_name 被指定为 NOT NULL,MySQL将在找到符合连接着条件的记录后停止搜索更多的行(查找冲突)
    查看全部
  • 多表的连接跟两张表的连接一样 表的连接实质就是外键的逆向约束 例子: SELECT goods_id,goods_name,b.cate_name,c.brand_name,goods_price FROM products AS a INNER JOIN products_cate AS b ON a.goods_cate = b.cate_id INNER JOIN products_brand AS c ON a.brand_name = c.brand_id;
    查看全部
    0 采集 收起 来源:多表连接

    2015-09-08

  • 左外连接 显示左表中的全部记录和右表中符合连接条件的记录 右外连接 显示右表中的全部记录和左表中符合连接条件的记录 若某字段只存在某一表,则另一表的里字段返回 NULL
    查看全部
    0 采集 收起 来源:外连接OUTER JOIN

    2015-09-08

  • 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;表示返回都含有的name值对应的字段
    查看全部
    0 采集 收起 来源:内连接INNER JOIN

    2015-09-08

举报

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

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