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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 比较运算符和函数(条件成立返回1,否则返回0) 1、[NOT]BETWEEN...AND...[不]在范围之内,结果返回1或0。 例如:15 BETWEEN 10 AND 16; //1。 2、[NOT]IN() 是否在列出选项内。 例如:SELECT 10 IN(5,10,25); //1。 3、IS [NOT] NULL:只有NULL IS [NOT] NULL返回1,其他情况(包括'',0)都返回0。
    查看全部
  • 数值运算符和函数<br> SELECT CEIL(3.01) ==>4 /*有n.xx 都是n+1 进一取整 向上取整<br> SELECT FLOOR(3.99) ==>3 /*取n.xx 都是n 舍一取整 向下取整<br> SELECT 3 DIV 4 ==> 0 /*整数除法,取商<br> SELECT 3/4 ==>0.75 /*除法<br> SELECT 2.1 MOD 2 ==>0.1 /*取余数(取模) 被除数是整数,小数都可以<br> SELECT 21 % 2 ==>1 /*取余数 mod=% SELECT POWER(3,4) ==>81 /*3的4次方 幂运算<br> SELECT ROUND(3.1415926,4) ==>3.1416 /*四舍五入,保留4位小数<br> SELECT TRUNCATE(123.89,1) ==>123.8 /*截取小数点后的位数<br> SELECT TRUNCATE(123.89,0) ==>123 /*截取小数点后的位置,0位为整数部分<br> SELECT TRUNCATE(123.89,-1) ==>120 /*截取-1,从个位起去掉后面的数值替换为0
    查看全部
  • 字符函数 II (8)LENGTH():取得字符串长度 LENGTH('MYSQL ’);//6;最后加了个空格 (9)LTRIM():清空字符串前面(左端)空格 (10)RTRIM():清空字符串末尾(右端)空格 (11)TRIM():删除前导、后续空格或者指定字符 SELECT TRIM(' MySQL '); SELECT TRIM(LEADING '?' FROM '??MYSQL???'); //删除前导? SELECT TRIM(TRAILING '?' FROM '??MYSQL???'); //删除后续? SELECT TRIM(BOTH '?' FROM '??MYSQL???'); //前后均删除,但不能删除中间的? (12)REPLACE():替换 SELECT REPLACE('MY???SQL','?',''); //将问号换成空白,即去掉? SELECT REPLACE('MY???SQL','?','~~'); //可以将n个?换成m个组合符号 (13)SUBSTRING():字符串截取(从1开始,编程里可能从0开始) SELECT SUBSTRING('mYSQL',1,2); //从字符串中的第一个位置开始截取2个字符mY SELECT SUBSTRING('mYSQL',3); //SQL 从第3的位置开始截取到结束 SELECT SUBSTRING('mYSQL',-2); //QL 从倒数第2位开始截取到结束 SELECT SUBSTRING('mYSQL',-3,-1); //F,长度不能是负的,但是有些编程语言支持,而mysql不支持 (14)[NOT] LIKE:模式匹配(百分号%代表任意个字符; 下划线_代表任意一个字符) 例子:"tom%" SELECT * FROM test WHERE first_name LIKE '%1%%' ESCAPE '1'; // 去除'1'后面的编译,查找包含'%'符号的信息
    查看全部
    0 采集 收起 来源:MySQL 字符函数

    2018-03-22

  • 字符函数 I<br> <br> (1)CONCAT():字符连接<br> SELECT CONCAT('IMOOC','-','MySQL');//IMOOC-MySQL<br> SELECT CONCAT (first_name,last_name) AS fullname FROM test;<br> (2)CONCAT_WS():使用指定的分隔符进行字符连接,(第一个位置指定分隔符,后面的为分割的内容)<br> SELECT CONCAT_WS('%','abc','def'); //第一个是指定的分隔符;//abc%def<br> (3)FORMAT():数字格式化 SELECT FORMAT(123560.75,2); //123,560.75;第二个参数若为0(四舍五入),显示整数 (4)LOWER():转化小写<br> (5)UPPER():转换大写<br> SELECT UPPER('mysql');//MYSQL<br> (6)LEFT():获取左侧字符<br> (7)RIGHT():获取右侧字符<br> SELECT LEFT ('MYSQL',2); //MY<br> SELECT LOWER(LEFT('mYsql',2)); //函数嵌套;//my
    查看全部
    0 采集 收起 来源:MySQL 字符函数

    2018-03-22

  • 多表删除 1、查找重复记录: SELECT goods_id,goods_name FROM tdb_goods GROUP BY goods_name HAVING count(goods_name) >= 2; 2、删除重复记录: 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

  • 基础操作: 创建 修改 删除 数据库
    查看全部
    0 采集 收起 来源:内容回顾

    2016-09-03

  • 连接 1、内连接:在MySQL中JOIN,INNER JOIN,CROSS JOIN是等价的 2、外连接:LEFT JOIN左外连接;RIGHT JOIN右外连接 3、连接条件:使用ON设定连接条件,也可以用WHERE代替 · ON:通常使用它设定连接条件 · WHERE:进行结果集记录的过滤 4:内连接:显示左表及右表符合连接条件的记录,即仅符合条件的记录; 左外连接:显示左表全部和右表符合连接条件的记录; 右外连接:显示右表全部记录和左表符合连接条件的记录。 多表连接:跟两张表的连接一样,表的连接实质就是外键的逆向约束。 例子: SELECT goods_id,goods_name,cate_name,brand_name,goods_price FROM tdb_goods AS g INNER JOIN tdb_goods_cates AS c ON g.cate_id = c.cate_id (两个join之间无逗号) INNER JOIN tdb_goods_brands AS b ON g.brand_id = b.brand_id\G;
    查看全部
    0 采集 收起 来源:内连接INNER JOIN

    2016-09-04

  • 多表更新之一步到位 建表、查询、写入三合一: CREATE TABLE tdb_goods_brands ( brand_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, brand_name VARCHAR(40) NOT NULL ) SELECT brand_name FROM tdb_goods GROUP BY brand_name; 多表更新: UPDATE tdb_goods INNER JOIN tdb_goods_brands ON tdb_goods.brand_name = tdb_goods_brands.brand_name SET tdb_goods.brand_name = tdb_goods_brands.brand_id; (起别名) UPDATE tdb_goods AS t INNER JOIN tdb_goods_brands AS b ON t.brand_name = b.brand_name SET t.brand_name = b.brand_id; 通过ALTER TABLE语句修改数据表结构 ALTER TABLE tdb_goods CHANGE goods_cate cate_id SMALLINT UNSIGNED NOT NULL, CHANGE brand_name brand_id SMALLINT UNSIGNED NOT NULL; Ps1:外键,不一定是物理的外键,逻辑的外键也行,当然,物理外键更能保证数据的完整性和一致性。 Ps2:注意:数字类型的字段占用的空间更小,查询的效率也更高。
    查看全部
  • 多表更新 语法:UPDATE table_references SET col_name1={expr1 DEFAULT} [,col_name2={expr2 DEFAULT}]... [WHERE where_condition] Eg:update tdb_goods inner join tdb_goods_cates on goods_cate=cate_name set goods_cate=cate_id; //将 tdb_goods 表和 tdb_goods_cates 表通过 goods_cate=cate_name 连接,然后更新 goods_cate=cate_id JOIN, CROSS JOIN 和 INNER JOIN 是等价的。 LEFT [OUTER] JOIN ,左外连接 RIGHT [OUTER] JOIN,右外连接
    查看全部
    0 采集 收起 来源:多表更新

    2016-09-03

  • 删除约束 1、删除主键约束: ALTER TABLE table_name DROP PRIMARY KEY; 2、删除唯一约束: ALTER TABLE table_name DROP {INDEX} key_name; 3、删除外键约束: ALTER TABLE table_name DROP FOREIGN KEY fk_symbol; Ps1:唯一约束的 index_name 可通过 SHOW INDEX FROM table_name\G; 查询。 Ps2:外键约束的名字 fk_symbol 可通过 SHOW CREATE TABLE table_name; 查询。 Ps3:INDEX:index是索引标识,和create table name 中的table是相同的标识。 Ps4:当字段id smallint unsigned auto_increment primary key时,不可以删除主键约束;必须先修改为 id smallint unsigned,再删除主键约束。
    查看全部
  • 添加约束 1、添加主键约束: ALTER TABLE table_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_column_name,...); 2、添加单个唯一约束: ALTER TABLE table_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEXKEY] [index_name] [index_type] (index_column_name,...); 3、添加多个唯一约束: ALTER TABLE table_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEXKEY] [index_name] [index_type] (index_column_name,...),ADD [CONSTRAINT [symbol]] UNIQUE [INDEXKEY] [index_name] [index_type] (index_column_name,...); 4、添加外键约束: ALTER TABLE table_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [idnex_name] (index_column_name,...) REFERENCES table_name1(index_column_name); 5、添加/删除默认约束: ALTER TABLE table_name ALTER [COLUMN] column_name {SET DEFAULT literalDROP DEFAULT} Ps1:CONSTRAINT 可加可不加,加该关键字后还可以选择添加主键别名; Ps2:唯一约束可以有多个,但主键约束有且只能有一个。
    查看全部
  • 修改数据表:列的增加,删除,约束的增加删除 多个操作之间用,隔开 添加单列 ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST AFTER col_name] 例如: ALTER TABLE users1 ADD age TINYINT UNSIGNED NOT NULL DEFAULT 10;//位于最后一列 在 username后面添加 password 属性: ALTER TABLE users1 ADD password VARCHAR(32) NOT NULL AFTER username; (2)添加多列 ALTER TABLE tbl_name ADD [COLUMN] (col_name column_definition,...) (3)删除列 ALTER TABLE tbl_name DROP [COLUMN] col_name 例如:ALTER TABLE users1 DROP truename; 一次删除多列: ALTER TABLE uses1 DROP password,DROP age; 也能删除一列的同时,新增一列。其间用逗号隔开。
    查看全部
  • 由[NOT] IN/EXISTS引发的子查询 =ANY 等价于 IN !=ALL或<>ALL等价于NOT IN
    查看全部
  • 由比较运算符引发的子查询 1、使用比较运算符来子查询: SELECT id,name,price FROM goods WHERE price >= (SELECT ROUND(AVG(price),2) FROM goods); 2、在子查询时的关键字ANY / SOME / ALL: select goods_name,goods_price from tdb_goods where goods_price >= ANY (select goods_price from tdb_goods where goods_cate='超级本');
    查看全部
  • 外键约束条件
    查看全部

举报

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

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