尚硅谷MySQL笔记(未完成)

这篇博客详细介绍了MySQL的基本操作,包括服务启动和停止、登陆与退出,以及各种常见命令。深入探讨了DQL语言,涵盖基础查询、条件查询、排序查询和函数的使用。还涉及到了DML、DDL、TCL语言的学习,涵盖了插入、修改、删除、库表管理、数据类型和约束等内容。此外,还讲解了事务处理、视图、储存过程和函数以及控制流程结构。
摘要由CSDN通过智能技术生成

目录

MySQL服务的启动和停止

MySQL服务端的登陆和退出

MySQL的常见命令

1.查看当前所有的数据库

2.打开指定的库

3.查看当前库的所有表

4.查看其它库的所有表

5.创建表

6.查看表结构

7.查看服务器的版本

MySQL的语法规范

DQL语言的学习

基础查询

#1.查询表中单个字段

#2.查询表中多个字段(顺序按照输入的顺序)

#3.查询表中所有字段

#4.查询常量值

#5.查询表达式

#6.查询函数,参照java 返回函数返回值

#7.起别名

#8.去重distinct

#9.连接字段concat

#10.将null转换成别的字符ifnull

条件查询

一、按条件表达式筛选

二、按逻辑表达式筛选

三、模糊查询

安全等于:<=>

排序查询 

【按表达式排序】

【按别名排序】

【按函数排名】

【按多个字段排序】

常见函数

字符函数

数学函数

日期函数

分组函数

分组查询

链接查询

子查询

分页查询

union联合查询

六、DML语言学习

插入语句

修改语句

删除语句

七、DDL语言学习

库和表的管理

常见数据类型介绍

常见约束

八、TCL语言的学习

事务和事务处理

九、视图的讲解

十、储存过程和函数

十一、控制流程结构


MySQL服务的启动和停止

 方式一:cmd-管理员身份运行

​ net start mysql(服务名)

​ net stop mysql(服务名)

方式二:计算机——右击——管理——服务——找到mysql右键开启关闭

MySQL服务端的登陆和退出

登录:mysql 【-h 主机名 -P 端口号】 -u 用户名 -p 密码

退出:exit 或 ctrl+C

MySQL的常见命令

1.查看当前所有的数据库

 show databases;

2.打开指定的库

use 库名;

3.查看当前库的所有表

show tables;

4.查看其它库的所有表

show tables from 库名;

5.创建表

create table 表名(
    列名 列类型,
    ...
    列名 列类型
);

6.查看表结构

desc 表名;

7.查看服务器的版本

登录到mysql服务端:打开cmd,select version();

没登陆:打开cmd,mysql --version 或  mysql --V

MySQL的语法规范

1.不区分大小写,但建议关键字大写,表名、列名小写

2.每条命令最好用分号结尾(另一种是\g)

3.每条命令根据需要,可以进行缩进 或换行

4.注释

              单行:1、#注释文字     2、-- 注释文字(注意空格)

              多行:/* 注释文字 */

DQL语言的学习

基础查询


语法
select 查询列表 from 表名;

类似于:System.out.println(打印东西);

特点:

1、查询列表可以是:表中的字段、常量值、表达式、函数
2、查询的结果是一个虚拟的表格
*/

use myemployees;

#1.查询表中单个字段


select last_name from employees;

#2.查询表中多个字段(顺序按照输入的顺序)


select last_name,salary,email from employees;

#3.查询表中所有字段


select * from employees;

#4.查询常量值


select 100;
select 'john';

#5.查询表达式


select 100%98;

#6.查询函数,参照java 返回函数返回值


select version();

#7.起别名


/*
①便于理解
②如果要查询的字段有重名的情况,可以使用别名区分开来
*/
#方式一:使用as
select 100%98 as 结果;
select last_name as 姓,first_name as 名 from employees;

#方式二:使用空格
select last_name 姓,first_name 名 from employees;

#特殊:别名有特殊符号,别名要用引号
select salary as 'out put' from employees;

#8.去重distinct

#案例:查询员工表中涉及到的所有的部门编号
select distinct department_id from employees;

#9.连接字段concat


/*
java中的+号:
①运算符,两个操作数都为数值型
②连接符,只要有一个操作数为字符串

mysql中的+号:
仅仅只有一个功能:运算符

select 100+90;两个操作都为数值型,则做加法运算
select '123'+90;其中一方为字符串,试图将字符串转换成数值型
                        如果转换成功,则继续做加法运算
select 'john'+90;       如果转换失败,则字符串数值转换成0    

select null+90;只要其中一方为null,则结果肯定为null
*/

#案例:查询员工名和姓连接成一个字段,并显示为 姓名
select concat(last_name,first_name) as 姓名 from employees;

#10.将null转换成别的字符ifnull


SELECT
    ifnull(commission_pct, 0) AS 奖金率,
    commission_pct
FROM
    employees;

条件查询

语法:
                SELECT
                              查询列表
                FROM
                              表名
                WHERE
                              筛选条件;

分类:
      一、按条件表达式筛选

      简单条件运算符:> < = != <> >= <=

      二、按逻辑表达式筛选

      逻辑运算符:
                 作用:用于连接条件表达式
                  &&  ||  !
                 and  or  not 

      &&和and:两个条件都为true,结果为true,反之为false
      ||和or :只要有一个条件为true,结果为true,反之为false
      !和not:如果连接的条件本身为false,结果true,反之为false

      三、模糊查询

          LIKE
          between and
          in
          is null
 

一、按条件表达式筛选

#案例1:查询工资>12000的员工信息

SELECT
    *
FROM
    employees
WHERE
    salary > 12000;

#案例2:查询部门编号不等于90号的员工名和部门编号

SELECT
    last_name,
    department_id
FROM
    employees
WHERE
    department_id <> 90;

二、按逻辑表达式筛选

#案例1:查询工资在10000到20000之间的员工名、工资、奖金率

SELECT
    last_name,
    salary,
    commission_pct
FROM
    employees
WHERE
    salary >= 10000
AND salary <= 20000;

#案例2:查询部门编号不是在90到110之间的,或者工资高于15000的员工信息

SELECT
    *
FROM
    employees
WHERE
    NOT (
        department_id >= 90
        AND department_id <= 110
    )
OR salary > 15000;

三、模糊查询

1.like

特点:
①一般和通配符搭配使用
通配符:
%  任意多个字符,包含0个字符
_  任意单个字符

案例1:查询员工名中包含字符a的员工信息

SELECT
    *
FROM
    employees
WHERE
    last_name LIKE '%a%';
#  1.%代表通配符,   2.字符一定用引号

案例2:查询员工名中第三个字符为n,第五个字符为l的员工名和工资

SELECT
    last_name,
    salary
FROM
    employees
WHERE
    last_name LIKE '__n_l%';

案例3:查询员工名中第二个字符为_的员工名

SELECT
    last_name
FROM
    employees
WHERE
    last_name LIKE '_\_%';#\ 转义符

#或last_name LIKE '_a_%' ESCAPE 'a';escape转义

2.BETWEEN AND

①使用between and可以提高语句的简洁度
②包含临界值
③两个临界值不要调换位置

案例1:查询员工编号在100到120直接的员工信息

SELECT
    *
FROM
    employees
WHERE
    employee_id BETWEEN 100
AND 120;

3.in

含义:判断某字段的值是否属于in列表中的某一项
特点:①使用in提高我们的语句简洁度
      ②in列表的值类型必须一致或兼容
      ③

案例1:查询员工的工种编号是IT_PROG、AD_VP、AD_PRES中的一个员工名和工种编号

SEL

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值