Java教程

Msql基础day03----查询

本文主要是介绍Msql基础day03----查询,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

子查询

select语句当中嵌套select语句,被嵌套的select语句是子查询

from后面嵌套子查询

select ....from....group by....;
//将以上结果当作临时表t
select t.*,....from(select....from....group by...)t join..on..;

在select后面嵌套子查询

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

//例:查询部门工作岗位是B和A
①select ename,job from emp where job in ('A','B');
②select ename,job from emp where job = 'A' or 'B';
③使用union:
select ename,job from emp where job = 'A'
union
select ename,job from emp where job = 'B';
//需要注意的是在使用union的时候两个表的列必须相同
limit(分页查询)是Mysql特有的
取结果集中的部分数据
语法机制:limit startIndex,length
startIndex表示起始位置,length表示取几个
*是SQL语句最后执行的一个环节*

通用的标准分页sql
每页显示三条记录:一:0,3;二:3,3;三:6,3.。。
每页显示pageSize条记录
第pageNo页:(pageNo(显示第几页)-1)*pageSize,pageSize(每页显示多少条记录)

表的创建

创建表的语法格式:
create table 表名 (字段 1 数据类型default 值 (插入默认值) …);见名知意

//字段的数据类型(常见):
int,bigint(长整型),float(浮点型),char(定长字符串),
varchar(可变长字符串),date(日期类型)
BLOB(二进制大对象)//存储图片视频
CLOB(字符大对象)//存储大文本

char和varchar怎么选择?
char:固定的字符长度空间,只要不超过就能使用(定长)
varchar:动态的字符长度,根据填写的内容动态判断长度并分配空间(长度不确定)
表名在数据库中一般以t_和tbl_开始
drop table if exists t_表名;---->当这个表存在的话删除

在表中插入数据

insert into 表名 (字段1,字段2,.....)values (值1,值2,.....)
要求:字段的数量和值的数量相同,并且数据类型要对应相同
==注意==
当一条insert语句执行成功后表格当中会多出一行记录,这一行记录中后期不能再插入数据只能使用update进行更新

表的复制

create table 表名 as select语句------>将查询结果当作表创建出来

将查询结果插入到一张表中

insert into dep1 select * from dept;

修改表中数据

update 表名 set 字段名1 = 值1,字段名2 = 值2....where 条件;
不加where条件的话则是修改所有数据
这篇关于Msql基础day03----查询的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!