MySQL之DML

29 篇文章 0 订阅
4 篇文章 0 订阅

DML

MySQL语句:主要功能:增删改查(CRUD)(creat,read,update,delete)

 

创建表:create table `表名`(`字段名1` 类型 ,`字段名2` 类型 not null default ‘’, 。。。。 primary key(`字段名`);

添加:语法:inset into 表名 values(‘添加值‘);

                     Inset into 表名(需要添加的字段)value (‘添加值‘);

 

修改:update 表名 set 需要修改字段名 = ‘修改值’ where 表名.字段名 = ‘原值’ (and/or 可在后继续添加条件,由于这个原因,才有sql注入问题);

删除:delete from 表名 where 字段名 = 值;

 

Mysql规范:

  1. 不区分大小写,但建议关键字大写,表名,列名小写
  2. 每条命令最好用分号结尾
  3. 每条命令根据需要,可以进行缩进或换行
  4. 注释

单行注释:#注释文字

单行注释:--注释文字

多行注释:/*注释文字*/

 

 

 

 

查询

展示数据库:SHOW DATABASES;

创建一个utf8数据库:CREATE DATABASE 数据库名 CHARACTER SET utf8;

#如果mydb4数据库不存在,则创建;如果存在,则不创建。CREATE DATABASE IF NOT EXISTS mydb4;

查询字段表语句:SELECT 查询字段(多字段使用,隔离)FROM 表名;(*表示差选全部)

给表名和列名去名:SELECT 查询字段(多字段使用,隔离)AS ‘名称’ FROM 表名;

查询有几个—>DISTINCT除重,相同的只展示一次:SELECT DISTINCT 字段名 FROM 表名

对查询结果进行排序:SELECT 列名 FROM 表名 ORDER BY 排序字段(多个可以,隔开) 【排序规则】排序方式(默认正序ASC、倒序DESC)

条件查询:SELECT 字段名(多字段使用,) FROM 表名 WHERE 查找条件(和and,或 or

条件查询包括:

逻辑查询(and、or、not),

不等值查询(<,>,<=,>=,<>),

区间判断(between and)区间判断语法中,必须小值在前,大值在后,反之得不到正确结果。

Null值判断(is null,is not null)

枚举查询(in (值1,值2.。。。))in的查询效率较低,可通过多条件拼接,

模糊查询(LIKE 通配符):列名 like ‘z_’ 其中每一个”_”表示一个字符,“%”表示所有,模糊查询只能和like关键字结合使用。

模糊查找可通过转义字符实现”\”或关键字escape “特殊标识符”

Null值判断is not :select 字段名 f,rom 表名 where 字段名 (is)/(is not)null;

 安全等于<=>,可以用来判断null和数值,

Is null vs <=> “

       IS null: 仅仅可以判断null值,可读性较高,建议使用

       <=> : 即可以判断null,又可以判断普通的数值,可读性较低

 分支结构查询:case 判断语句 end #case where 条件1 then 结果1 .。。。else 结果 end as 字段名 from 表名;

Eg:select 字段名,

Case

       Where 条件1 then 结果1

       Where 条件2 then 结果2

Where 条件3 then 结果3

Else 结果

       End as 字段别名

From 表名;

执行顺序:select(10) * from(1) * where(2) * (select(7)* * from(3) * where(4) * group by (5)* having(6) * order by(8) ) GROUP BY(9) * order by(11) *

 

 

聚合查询

max;select max(字段名) from 表名;

select 表名.* from 表名 where 字段名=(select max(字段值)from字段名);

聚合函数

说明

SUM()

求所有行中单列结果的总和

AVG()

平均值

MAX()

最大值

MIN()

最小值

COUNT()

求总行数

 

分组查询

语法:SELECT 列名 FROM 表名 WHERE 条件  [GROUP BY 分组依据(列);]()

关键字:GROUP BY,必须在where之后生效,与聚合连用

 

分组过滤

语法:SELECT 列名 FROM 表名 WHERE 条件 group by 分租列 having 过滤规则;

注意:having对分组后的数据进行过滤

使用数据库的好处:可以持久化数据到本地,结构化查询

数据库常见的概念:DB-数据库,存储数据的容器    DBMS-数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理DB     SQL-结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的主流数据库软件通用的语言

数据库存储数据的特点:

1. 数据存放到表中,然后表再放到库中

2.一个库可以有多张表,每张表具有唯一的表名用来标识自己

3. 表中有一个或多个列,又称为“字段”,相当于Java中“属性”

4. 表中的每一行数据,相当于Java中“对象”

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值