Mysql快速上手一(基础知识数据模型数据类型SQL语句)

Posted 李和贵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql快速上手一(基础知识数据模型数据类型SQL语句)相关的知识,希望对你有一定的参考价值。

文章目录


mysql基础知识

基本概念

本地mysql服务启动与停止

这里的mysq对应的是windows下的服务名称,可能会有所出入

net start mysql 
net stop mysql

也可以直接在服务中,点击选择开启与关闭

客户端连接mysql

windows可以直接使用cmd进行连接本地的mysql,(别忘了配置mysql的全局环境变量)

mysql [-h 127.0.0.1]  [-p 3306] -u root -p 

连接本地的时候直接使用

mysql -u 用户名 -p 

然后输入你的密码即可

数据模型

关系型数据库

概念:建立在关系模型基础上,由多张项目连接的二维表组成的数据库

数据模型

数据类型

  • 数值类型
  • 字符串类型
  • 日期类型

SQL语句

DDL

数据定义语言,用来定义数据库对象(数据库,表,字段)

表操作

  • 添加字段
    ALTER TABLE 表名 ADD 字段名 类型(长度)[COMMIT 注释] [约束];
    
  • 修改字段
    ALTER TABLE 表名 MODIFY 字段名 新数据长度;
    
  • 修改表名
    ALTER TABLE 表名 RENAME TO 新表名
    
    示例:将 person表改为student表
    alter table person rename to student;
    
    • 删除表
    DROP TABLE [ IF EXISTS ] 表名;
    
    示例:
    drop table if exists teachers;
    

库操作

  • 查询所有数据库

    SHOW DATABASE
  • 查询当前数据库

    SELECT DATABASE();
    
  • 创建

    CREATE DATABASE [ IF NOT EXISTS ] 数据库名 [ DEFAUT CHARST 字符集 ] [ COLLATE 排序规则 ] ;
    
  • 删除

    DROP DATABASE[ IF EXISTS ] 数据库名;
    
  • 使用

    USE 数据库名;
    
  • 查询当前数据库所有表

    SHOW TABLES
    
  • 查询表结构

    DESC 表名
    
  • 查询指定表的建表语句

    SHOW CREATE TABLE 表名;
    
  • 创建表

    CREATE TABLE 表名 
    	字段1 类型 1[ COMMIT 字段1注释 ],
    	字段2 类型 2[ COMMIT 字段2注释 ]

    示例:我们创建一个十分简单的教师表teacher

    CREATE TABLE teacher ( 
    	id INT COMMENT '唯一编号', 
    	NAME VARCHAR ( 50 ) COMMENT '名字', 
    	gender VARCHAR ( 10 ) COMMENT '性别' 
    );
    
  • 删除表

    drop table if exists teachers;
    

    删除并重新创建表

    truncate teachers;
    

DML

数据库操作语言,用来对数据库表中的数据进行增删改

  • 表中插入数据
    注意:键值位置要一一对应
    INSERT INTO student ( NAME, age, gender, address )
    VALUES
    ( '测试', 22, '男', '数据库' );
    
    也可以这样写,但是得与表中得顺序一一对应
    INSERT INTO student
    VALUES
    ( 18,'测试', 22, '男', '数据库' );
    
    也可以一次插入多个数据
    INSERT INTO student
    VALUES
    ( 19, '测试', 22, '男', '数据库' ),
    ( 20, '测试', 22, '男', '数据库' ),
    ( 21, '测试', 22, '男', '数据库' );
    
  • 更新数据
    UPDATE student 
    SET NAME = 'uuuuuuu' 
    WHERE
    gender = '男';
    
  • 删除数据
    DELETE 
    FROM
    	student 
    WHERE
    	address = '数据库';
    

DQL

数据查询语言,用来查询数据库中表的记录

  • 基本查询

    SELECT NAME 
    FROM
    	student;
    

    别名

    SELECT NAME AS
    	'姓名' 
    FROM
    	student;
    
  • 条件查询(WHERE)

  • 聚合查询 (count、max、min、avg、sum)
    NULL 值不参与计算

  • 分组查询 (GROUP BY)
    WHRER和HAVING的区别
    执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤
    判断条件不同:where不是对聚合函数进行判断,而having可以

  • 排序查询 (ORDER BY)

    SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1,字段2 排序方式2;
    

    排序方式

    • ASC 升序
    • DESC 降序

    示例:获取年龄相同升序,同龄的按照入职时间降序排列

     	SELECT
    	* 
    	FROM
    		emp 
    	ORDER BY
    		age ASC,
    		entrydata ASC;
    
  • 分页查询 (LIMIT)

    SELECT * FROM 表名 LIMIT 页数,查询记录数;
    

DCL

数据控制语言,用来创建数据库用户,控制数据库的访问权限

  • 创建用户(仅在本地)
    CREATE USER 'itecast' @localhost IDENTIFIED BY '123456';
    
    任意IP
    CREATE USER 'itecast' @'%' IDENTIFIED BY '123456'
    
    修改用户密码

参考资料

B站黑马视频

作为笔记,后面会持续更新该方面

ElasticSearch基础-快速上手

参考技术A

MySql是关系型数据库,ES是文档型数据库,他们有一些相同的概念,只是叫法不一样。

settings是关于索引的设置,mappings定义索引的映射(表结构)。

2. 删除、关闭、打开索引

3. 为索引创建别名

1.查看映射

2.扩展映射

只能新增、不能修改。

3.基础数据类型

keyword: 不进行分词,对应term精准查询

text:分词,建立倒排索引,对应math搜索、如果使用term是无法搜索出数据的。

数值类型:byte、short、integer、long、float、double、half_float、scaled_float、

unsigned_long,对应term搜索和range搜索。

boolean:布尔类型

date:日期类型

4.复杂数据类型

普通对象:通常用在一对一关系场景。

内嵌对象:通常用在一对多关系场景、而且有内嵌对象条件查询的场景。

父子关系:通常用在父子文档更新很频繁,可以只更新父文档或只更新子文档的场景。

地理类型:地理查询

1.单个创建

2.批量创建

3.单个更新

4.批量更新

5.根据条件更新

6.upsert

存在则用doc内容去更新,不存在则用upsert内容去创建

7.单个删除

8.批量删除

9.根据条件删除

以上是关于Mysql快速上手一(基础知识数据模型数据类型SQL语句)的主要内容,如果未能解决你的问题,请参考以下文章

ElasticSearch基础-快速上手

python基础知识(具备其他编程语言基础快速上手python)

Paddle 点灯人 之 10分钟快速上手Paddle

Paddle 点灯人 之 10分钟快速上手Paddle

啊哈~花一天快速上手Pytorch(可能是全网最全流程从0到部署)

SQL字典零基础带你快速上手SQL语言