MySQL 学习日记day1

MySQL day1 学习日记

SQL语言

  1. DQL(Data query Language) 数据库查询语言,用于查询
  2. DML(Data Manipulation Language) 数据库管理语言,用于增删改
  3. DDL(Data Definition Language)数据定义语言
    用于定义数据库的结构 创建、修改、删除数据库对象
  4. DCL(Data Control Language) 数据控制语言 用于定义用户访问权限和安全级别
  5. TCL(T事务 Control Language) 事务控制语言

DQL 数据库查询语言

基础查询

语法: select 查询列表 from 表名;
特点:

  1. 查询列表可以是单个字段、多个字段、函数、常量
  2. 查询结果是个虚拟的表格
别名

①便于理解
如果要查询的字段有重名的现象,可以用别名来区分

  1. as
    select last_name as 姓名 from employees;

  2. 空格
    select last_name 姓名 from employees;
    如果别名中存在特殊字符(空格、#等) 或者想要区分大小写 可以用单引号引起来

去重 distinct

select distinct department_id from employees;

SQL中+ 的作用

SQL中+只有一个功能 那就是运算
如果两个数都是数值型 那就直接做加法运算
如果其中一个是字符型 那就先尝试将字符型转化为数值型再进行运算
转化成功 则继续做加法运算
转化失败 将字符型当做是0进行运算
只要有一方是null,结果永远是null

补充函数 ifnull(str,数)

意思是如果是null值, 那么返回一个指定的数

条件查询

语法: select 查询列表 from 表名 where 条件;
执行顺序
条件运算符 = < > <= >= <>(不等于)
逻辑运算符 and or not
模糊查询
like
between and
in
is null/is not null

模糊查询
like

通常和通配符’_’’%'搭配使用
%多个字符 包括0个字符
_单个字符
SQL中 转义符</font>

between and
  1. 包括边界值
  2. 2个边界值顺序不能颠倒
in

in(str1,str2,…)
用于判断某字段的值是否属于in列表中的某一项

  1. in列表的值类型必须一致或兼容
  2. 不能和通配符搭配
is null/ is not null

用于判断是否为null值
<=> 安全等于
安全等于与is null 比较

排序

语法: select 查询列表 from 表名 [where 条件] order by 排序条件 asc|desc;

order by字段放在最后 除了limit字段更后之外

  1. 如果不写asc|desc 默认升序
  2. 可以支持单个字段、多个字段、表达式、函数
  3. 可以按照别名排序(函数不可以用别名)

常见函数

单行函数
字符函数
  1. concat 拼接
  2. length 参数的字节个数
    utf8中汉字占3个字节
  3. upper lower
    upper变大写 lower 变小写
  4. substr 截断
    两种重载: substr(字符,索引) 意思是把索引所在往后的字段截取下来
    (SQL中索引从1开始)
    substr(字符,开始索引,长度) 意思是从开始索引处开始,截取指定长度的一截字段
  5. instr(str, substr)
    substr在str中第一次出现的索引位置 没有则返回0
  6. lpad 左填充
    lpad(字符,填充字符,总长度) 意思是在被操作字符的左边填充指定字符至指定长度
  7. rpad 右填充
  8. replease 替换
    replease(字符,原先,要替换为的) 把字符中的原先的符号 替换成指定字符
  9. trim() 去掉前后空格
    trim(‘a’,‘aaaaaqaqaaaa’) 结果是qaq
数学函数
  1. round 四舍五入
    两种重载形式
    round(x) 四舍五入
    round(x,数字) 小数点后保留几位小数 round(1.579,2) 结果是1.58
  2. ceil 向上取整
  3. flour 向下取整
  4. truncate截断
  5. mod 取余
日期函数
  1. now() 目前系统时间 带日期带时间
  2. curdate() 目前系统时间,只带日期 不带时间
  3. curtime() 目前系统时间,只带时间 不带日期
  4. year()
  5. month()
  6. monthname()
  7. date()
  8. hour()
  9. minute()
  10. second()
  11. str_to_date(‘9-22 1998’,’%m-%d %Y’)
  12. date_formate() 将日期转换为字符
    date_formate(‘2008-6-9’, %Y年%m月%d日);
其他函数

select version();
select database();
select user();

流程控制函数
  1. if(条件,为真时返回,为假是返回) 类似三元运算符
  2. case
    方式1 类似switch
    switch {
    case 常量值1; 语句1; break;
    case 常量值2; 语句2; break;
    ……
    default;
    }
    case 字段
    when 常量值1 then 要显示的值1或者语句1;(语句1的话要加分号 常量就不用分号)
    when 常量值2 then 要显示的值2或者语句2;
    ……
    else 要显示的值n或语句n; end

方式2 类似多重if

case
when 条件1 then 要显示的值1或者语句1;
when 条件2 then 要显示的值2或者语句2;
……
else 要显示的值n或者语句n; end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MySQL宋红康学习日记是宋红康在学习MySQL数据库过程中记录的笔记和心得体会。在这个学习日记中,宋红康详细地记录了自己的学习过程以及遇到的问题和解决方法。 首先,宋红康在学习日记中介绍了MySQL数据库的基本概念和原理。他学习MySQL的架构和组成部分,包括服务器端、客户端和存储引擎。他还学习MySQL的常用数据类型和索引类型,了解了MySQL如何存储和管理数据。 其次,宋红康记录了自己学习MySQL的过程和方法。他通过阅读官方文档、参考书籍和观看教学视频等途径,系统地学习MySQL的各种功能和语法。他还提到自己在学习过程中遇到的一些问题,如数据查询和更新的语法错误,以及性能优化的挑战等。他通过查找资料和请教他人的帮助,成功地解决了这些问题,并对解决方法进行总结和归纳。 此外,宋红康还分享了自己在使用MySQL时的一些经验和技巧。他介绍了一些常用的MySQL命令和操作,如创建数据库、建表、插入和查询数据等。他还分享了一些优化数据库性能的方法,如使用索引、合理设计数据结构和加强查询语句的效率等。这些经验和技巧对于其他学习MySQL的人来说是非常有价值的。 最后,在学习日记的结尾,宋红康总结了自己在学习MySQL过程中的收获和感受。他认为MySQL是一种功能强大、应用广泛的数据库系统,掌握MySQL的技能对于他的职业发展非常重要。在学习的过程中,他不仅加深了对数据库原理和操作的理解,还培养了自己分析和解决问题的能力。 总之,MySQL宋红康学习日记是宋红康在学习MySQL过程中的记录和总结,对于其他学习MySQL的人来说是一份宝贵的学习资料和参考指南。 ### 回答2: MySQL宋红康学习日记 今天我开始学习MySQL数据库,对于数据库的概念和作用有了初步了解。数据库是一个存储和管理数据的系统,可以方便地对数据进行增删改查操作。而MySQL是目前最流行的关系型数据库管理系统之一。 首先,我学习MySQL的安装和配置。通过官方网站下载并安装了MySQL,然后进行了一些基本的配置,如设置用户名和密码等。安装完成后,我尝试连接并登录到MySQL服务器,成功进入了MySQL的命令行界面。 接下来,我学习了数据库的创建和管理。在MySQL中,可以使用CREATE DATABASE语句来创建一个新的数据库。我创建了一个名为“mydb”的数据库,并使用USE语句将其设为当前数据库。然后我学习了如何创建表格,表格是用来存储数据的基本单位,可以通过CREATE TABLE语句定义表格的结构和字段。 在创建表格后,我学习了如何向表格中插入数据。使用INSERT INTO语句可以将数据插入到表格中的指定字段中。我尝试了一些简单的插入操作,并成功地将一些测试数据插入到了表格中。 除了插入数据,我还学习了如何查询数据。可以使用SELECT语句从表格中提取数据。通过指定字段和条件,可以过滤和排序所查询的结果。我尝试了一些简单的查询操作,查找了符合条件的数据,并进行了一些排序操作。 在学习了基本的增删改查操作后,我对MySQL学习有了初步的了解。下一步,我将继续学习MySQL的高级特性和优化技巧,以提高数据库的性能和效率。我相信通过不断的学习和实践,我能够更加熟练地使用MySQL,并能够应对更复杂的数据库操作。 ### 回答3: MySQL宋红康学习日记是宋红康学习MySQL数据库的记录和总结。MySQL是一种开源的关系型数据库管理系统,被广泛应用于网站开发、数据分析和企业应用等领域。宋红康根据自己的学习经历和体会,记录了他在学习MySQL过程中的所思所感。 学习MySQL的第一天,宋红康首先了解了MySQL的基本概念和特点。MySQL是使用C和C++编写的,支持多用户多线程的数据库管理系统。它具有高性能、稳定可靠等特点,可以处理大量的数据和高并发的请求。宋红康对MySQL的这些特点表示非常欣赏,并意识到MySQL在现代互联网时代的重要性。 第二天,宋红康开始学习MySQL的基本操作。他学习了如何创建数据库、创建表和插入、更新、删除数据等基本操作。他通过实际操作,深入理解了SQL语句的执行过程和结果。 第三天,宋红康学习了数据库的设计和规范化。他了解了关系型数据库的基本原理和范式理论。他明白了数据库设计的重要性,以及遵循规范化原则对提高数据存储效率和数据一致性的重要性。 第四天,宋红康开始学习MySQL的高级应用。他学习了索引的创建、查询优化和事务处理等内容。他深入研究了索引的原理和使用方法,并学会了如何通过优化SQL语句提高查询性能。他还了解了事务的概念和特点,并通过实例演示了事务的使用方法。 第五天,宋红康开始进行MySQL的实战练习。他通过编写简单的应用程序,实现了与MySQL数据库的交互。他学会了使用编程语言与MySQL进行连接,并通过SQL语句实现数据库的增删改查操作。他深刻体会到了MySQL在实际应用中的价值和重要性。 总结起来,宋红康的MySQL学习日记记录了他在学习过程中的所学所悟。通过系统学习和实践,他对MySQL的基本概念、基本操作、数据库设计、高级应用和实际应用都有了较深入的了解。这些学习将为他今后的数据库工作奠定了坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值