栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MySQL学习笔记(二)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySQL学习笔记(二)

目录

一、子查询

1、where子句中使用子查询

2、from后使用子查询(常用)

3、select后嵌套子查询

二、union(可以将查询结果集相加)

1、语法

2、查询结果相加

三、limit

1、语法机制

2、执行顺序

3、标准分页sql

四、创建表

1、语句

2、常见数据类型

五、insert语句插入数据

1、语法

2、插入多行数据

六、表的复制

1、语法

2、将表的查询结果插入一张表中

七、修改(更新)数据

1、语法

八、删除数据

1、语法

2、删除大表


一、子查询

定义:select语句中嵌套select语句,被嵌套的select语句称为子查询

子查询出现位置: ​ select​ ...(select).. ​ from ​ ...(select).. ​ where ​ ...(select)..

1、where子句中使用子查询

语法:select 字段 from 表名 where 条件(select 字段 from 表名);

PS:where语句后不能跟分组查询关键字(avgminmax ...)

2、from后使用子查询(常用)

注意:将问题分步处理,将新表与另一张表进行表连接得到所需数据;有时无需看作新表,具体问题具体分析

" " + 字母:表示起别名

3、select后嵌套子查询

语法:select ​ 字段1,字段2(select 字段 from 表名2 where 条件) as 别名(给字段起别名) from ​ 表名1;

二、union(可以将查询结果集相加)

1、语法

 PS:使用union上下两段SQL语句查询的字段数必须一样多

union:既可以将两张有关联的表的查询结果相加,又可以将两张不相关联的表的查询结果相加

2、查询结果相加

方法一:select 字段 from 表名 where 条件1 or 条件2;
方法二:select 字段 from 表名 where 条件(字段 in ('...','...'))
方法三:使用union关键字

三、limit

· limit是mysql中特有的,其他数据库中没有,不通用
· limit用于取结果中的部分数据

1、语法机制

limit startIndex,length ​
startIndex表示起始位置 ​
length表示取几个 ​

语法:select 字段 from 表名 order by 字段 limit 起始位置,取的个数; ​
PS:省略起始位置时,默认从0位置开始取

2、执行顺序

 

3、标准分页sql

每页显示pageSize条记录 ​
第pageNo页:(pageNo - 1) * pageSize,pageSize ​
pageNo:第几页 ​
pageSize:每页几条记录

· 以上DQL部分结束

四、创建表

1、语句

 

2、常见数据类型

int:整数型(java中的int) ​
bigint:长整型(java中的long) ​
float:浮点型(java中的float double) ​
char:定长字符串(java中的String) ​
varchar:可变长字符串(StringBufferStringBuilder) ​
data:日期类型(java中的java.sql.Date类型) ​
BLOB:二进制大对象(存储图片,视频等流媒体信息) ​
CLOB:字符大对象(存储较大文本)

实际开发中,当某个字段中的数据长度不发生改变的时候,采用char;当数据长度不确定的时候,采用varchar

表名在数据库中一般建议以:t_ 或 tbl_ 开始

五、insert语句插入数据 1、语法

insert into 表名(字段名1,字段名2,字段名3,...) values (值1,值2,值3,...)
要求:字段的数量和值的数量相同,并且数据类型要对应相同

· 当一条insert语句执行成功之后,表格中必然会多一条记录,即使多的这条语句中的某些字段是NULL,后期也不能通过insert语句在该NULL位置插入数据,只能使用update语句进行更新

· insert into 表名(...)——表名后的字段可以省略不写

2、插入多行数据

语法:insert into 表名 (字段1,字段2,...) values (第一条数据),(第二条数据),...;

六、表的复制 1、语法

create table 表名 as select * from 被复制的表名;

2、将表的查询结果插入一张表中

insert into 表名 select * from 被查询的表名;

七、修改(更新)数据 1、语法

update 表名 set 字段1 = 值1,字段2 = 值2,... where 条件;

PS:没有条件整张表的数据全部更新;切记逗号不能写成and

八、删除数据 1、语法

delete from 表名 where 条件;

PS:没有条件表示删除全部数据

2、删除大表

由于delete删除不会释放物理存储空间,所以在删除大表时速度特别慢;删除大表时一般采用truncate(截断) 语法:truncate table 表名;

使用时必须问清楚数据是否还有作用

· 修改表结构直接使用软件即可

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/720876.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号