Mysql基础1

| CREATE TABLE 表名(字段 字段类型[COMMENT 字段注释])[表注释] | 创建表 |

| ALTER TABLE 表名 ADD 字段名(长度)[COMMENT 注释] | 表操作,添加字段 |

| ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度) | 修改数据类型 |

| ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度)[COMMENT 注释] | 修改字段名和数据类型 |

| ALTER TABLE 表名 DROP 字段名 | 删除字段 |

| DROP TABLE [IF EXISTS]表名 | 删除表 |

| TRUNCATE TABLE 表名 | 删除表 |

注:

  1. []表示里面内容可选

  2. SHOW TABLES必须先用USE 数据库名找到数据库才能使用

  3. TRUNCATE TABLE 表名会先删除表,然后再重新创一个空表单

    示例:

    创建库


SHOW DATABASES;

/*mysql

  test*/

SELECT DATABASE();

-- mysql

CREATE DATABASE test2;

/*mysql

  test

  test2*/

DROP DATABASE test2;

/*mysql

  test*/



创建表


USE test2;

--激活使用库test2

SHOW TABLES;

--显示为空

CREATE TABLE person(name VARCHAR(10),age INT)

--创建表单

DESC person;

--name VARCHAR(10)

--age  INT

ALTER TABLE person ADD gender CHAR(1);

--添加一个字段gender

DESC person;

--name VARCHAR(10)

--age INT

--gender CHAR(1)

ALTER TABLE person CHANGE name myname CHAR(10);

--替换name

DESC person;

--myname VARCHAR(10)

--age INT

--gender CHAR(1)

DROP TABLE person;

--删除

DESC person;

--null



数据类型


| 数值类型 | 大小 | 含义 |

| :-: | :-: | :-: |

| TINYINT | 1字节 | 小整数值 |

| SMALLINT | 2字节 | 大整数值 |

| MEDIUMINT | 3字节 | 大整数值 |

| INT或INTEGER | 4字节 | 大整数值 |

| BIGINT | 8字节 | 极大整数值 |

| FLOAT | 4字节 | 单精度 浮点数值 |

| DOUBLE | 8字节 | 双精度 浮点数值 |

| DECIMAL | | 小数值 |

注:

  1. DOUBLE(4,1)表示数值为4位,有1位小数

  2. unsinged添加在数值类型后,表示不为负值

| 字符串类型 | 大小 | 含义 |

| :-: | :-: | :-: |

| CHAR | 0-255字节 | 定长字符串 |

| VARCHAR | 0-65535 | 变长字符串 |

| TINYBLOB | 0-255字节 | 不超过255个字符串 |

| TINYTEXT | 0-255字节 | 短文本字符串 |

| BLOB | 0-65535字节 | 二进制的长文本数据 |

| TEXT | 0-65635字节 | 长文本数据 |

| MEDIUMBLOB | 0-16777215字节 | 二进制中等长度文本数据 |

| MEDIUMTEXT | 0-16777215字节 | 中等长度文本数据 |

| LONGBLOB | 0-4294967295 | 二进制形式极大文本数据 |

| LONGTTEXT | 0-4294967295字节 | 极大文本数据 |

注:CHAR(X)与VARCHAR(X)表示只能存储最大10个字符串

| 日期时间类型 | 大小 | 格式 | 含义 |

| :-: | :-: | :-: | :-: |

| DATE | 3 | YYYY-MM-DD | 日期值 |

| TIME | 3 | HH:MM:SS | 时间值或持续时间 |

| YEAR | 1 | YYYY | 年份值 |

| DATETIME | 8 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 |

| TIMESTAMP | 4 | YYYYMMDD HHMMSS | 时间戳 |

DML对数据库中的表的数据记录进行增删改操作


  1. 添加数据
  • 指定字段INSERT INTO 表名(字段名1,字段名2,…)VALUES(值1,值2,…);

  • 给全部字段INSERT INTO 表名VALUES(值1,值2,…);

  • 批量添加数据INSERT INTO 表名(字段名1,字段名2,…)VALUES(值1,值2,…)(值1,值2,…);

  • 所有批量添加数据INSERT INTO 表名VALUES(值1,值2,…);

    注:

  1. 插入数据需要与字段一一对应

  2. 字符串和日期需要引号引起来

  3. 不能超出规定数据类型

示例:


INSERT INTO person(name,age)VALUES('jack',20);

DESC person;

-- name age

-- jack 20



  1. 修改数据
  • UPDATE 表名 SET 字段名1=值1,字段名2=值2,…[WHERE 条件];

UPDATE person SET `name`='mack' WHERE id=1;

DESC person;

-- name age

-- mack 20



  1. 删除数据
  • DELETE FROM 表名 [WHERE 条件];

    注:

    1. DELETE语句条件可以有,也可以没有,如果没有,删除整张表

    2. DELETE语句不能删除某个字段值,如果删除某个字段值使用UPDATE

      应用:


  DELETE FROM person WHERE id=1;

  DESC person;

-- null





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


  1. 查询多个字段
  • SELECT 字段1,字段2,… FROM 表名;

  • SELECT * FROM 表名;


SELECT name FROM person;

--name

--mack

--rose



  1. 设置别名
  • SELECT 字段1[AS 别名1],字段2[AS 别名2]… FROM 表名;

    注:别名也就后面注释

  1. 去除重复记录
  • SELECT DISTINCT 字段列表 FROM 表名;

INSERT INTO person (id,name,url,gender) VALUES (3,'jack','dafda','男');

SELECT * FROM person;

-- id name url gender

-- 1  mack aaa  男

-- 2  rose bbb  女 

-- 3  jack ccc  男 

SELECT DISTINCT gender FROM person;

--男

--女



  1. 条件查询
  • SELECT 字段列表 FROM 表名 WHRER 条件

SELECT * FROM person WHERE id>2;

-- 3  jack ccc  男 



条件:

| 比较运算符 | 含义 |

| :-: | :-: |

| > | 大于 |

| >= | 大于等于 |

| < | 小于 |

| <= | 小于等于 |

| = | 等于 |

| <>或!= | 不等于 |

| BETWEEN…AND… | 在某个范围之内 |

| IN(…) | 在in之后的列表中的值,多选一 |

| LIKE | 模糊匹配(__匹配单个字符%匹配全部字符) |

| IS NULL | 是null |

| AND或&& | 并且 |

| OR或|| | 或者 |

| NOT或1 | 非 |

  1. 聚合函数:将一列数据作为一个整体,纵向计算

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

[外链图片转存中…(img-MWDvi6cg-1715574801796)]

[外链图片转存中…(img-jnL4DSiM-1715574801797)]

[外链图片转存中…(img-NjYncSYm-1715574801797)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值