Loading

MYSQL&SQL

1、概述

1.1、什么是mysql

MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一

1.2、什么是关系型数据库

关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由 二维表及其之间的关系 组成的一个数据组织。

1.3、mysql程序结构

image

1.4、数据库的相关概念

  • DB

    数据库:存储数据的仓库,保存了一系列有组织的数据

  • DBMS

    数据库管理系统,数据库是通过DBMS创建和操作的容器

  • SQL

    结构化查询语言,专门用来与数据库通信的语言,几乎所有DBMS都支持SQL

1.5、SQL语言的分类

  • DML

    数据操纵语句,用于添加、删除、修改、查询数据库记录,并检查数据完整性

    INSERT:添加数据到数据库中
    UPDATE:修改数据库中的数据
    DELETE:删除数据库中的数据
    SELECT:选择(查询)数据
    
  • DDL

    数据定义语句,用于库和表的创建、修改、删除

    CREATE TABLE:创建数据库表
    ALTER TABLE:更改表结构、添加、修改、删除列长度
    DROP TABLE:删除表
    CREATE INDEX:在表上建立索引
    DROP INDEX:删除索引
    
  • DCL

    数据控制语句,用于定义用户的访问权限和安全级别

    GRANT:授予访问权限
    REVOKE:撤销访问权限
    COMMIT:提交事务处理
    ROLLBACK:事务处理回退
    SAVEPOINT:设置保存点
    LOCK:对数据库的特定部分进行锁定
    

2、怎么进入mysql

  1. 打开命令提示符
  2. 输入命令 mysql -u root -p
  3. 回车输入密码
  4. 输入 exit 退出mysql

3、mysql的语法规范

  1. 不区分大小写
  2. 每句话以;或者\g结尾
  3. 各子句一般分行写
  4. 关键字不能缩写也不能分行
  5. 用缩进提高语句的可读性

4、数据处理之查询

4.1、基本的select语句

  • 选择表和选择列的关键字

    SELECT     标识选择哪些列
    FROM       标识从哪个表中选择
    
  • 选择全部列

    SELECT *
    
  • 选择特定列

    SELECT id, name, age
    
  • 列的别名

    紧跟列名、也可以使用关键字AS进行连接、别名可以使用双引号

    select last_name AS name
    select last_name name
    select last_name "name"
    
  • 显示表结构

    describe tableName
    desc tableName
    

4.2、过滤和排序数据

4.2.1、比较运算符

操作符 含义
= 等于(不是==)
> 大于
>= 大于等于
< 小于
<= 小于等于
<> 不等于(!=)
 select name from user where id=2;
 select id from user where name='李四';

4.2.2、其他运算符

操作符 含义
between...and... 在两个值之间(包含边界)
in(set) 等于值列表中的一个
like 模糊查询
is null 空值
  • between

    查询user表所有列中id在2到10之间记录(包含边界)

     select * from user where id between 2 and 10;	
    
  • in

    查询user表所有列中id等于1,2,3,100的记录

     select * from user where id in(1,2,3,100);
    
  • like

    % 代表零个或多个字符;_ 代表一个字符

    在所有记录中查询name的第二个字符是四的记录

     select * from user where name like '_四';
     select * from user where number like '10%';
    
  • null

    查找id是空值的记录

     select * from user where id is null;
    

4.2.3、逻辑运算符

操作符 含义
and
or
not
  • and

    查询id小于10,并且number的前两个字符是10的记录

     select * from user where id<10 and number like '10%';
    
  • or

     select * from user where id<20 or number like '10%';
    
  • not

    select * from user where id not in(1,2,3,100);
    

4.2.4、排序

  • 使用 order by 进行排序

  • 支持别名排序

  • 支持多列排序(当前一个列中存在多个相同的值时)

  • asc 升序

  • desc 降序

  • order by 子句在 select 语句的结尾

     select * from user order by id;
     select * from user order by id desc;
     select * from user order by id asc;
     select * from user order by id,age asc;
    
posted @ 2022-07-02 19:42  苏无及  阅读(33)  评论(0编辑  收藏  举报