Mysql:常用代码

时间:2023-03-09 00:06:09
Mysql:常用代码

C/S: Client Server

B/S: Brower Server

Php主要实现B/S

.net IIS

Jave TomCat

LAMP:L

Mysql:常用代码

Create table ceshi1

(

Uid varchar(50) primary key,

Pwd varchar(50),

Name varchar(50),

Nation varchar(50),

foreign key(nation) references nation(code)

)

写查询语句需要注意:

  1. 创建表的时候,最后一列不要写逗号
  2. 如果有多条语句一起执行,在语句之间加分号
  3. 写代码所有符号都是半角的

关系型数据库:表和表之间是有关系存在的

创建表时的几个关键字

  1. 主键:primary key
  2. 非空:not null
  3. 自增长列:auto_increnment 例:Pwd varchar(50) auto_increnment-----mysql里专用
  4. 外键关系:foreign key(列名) references 表名(列名)-----mysql里专用

CRUD操作:

  1. 添加数据:

Insert into info values(‘’,’’,’’) 要求values 括号里的值个数要和表里列数相同

Insert into info (code,name) values(‘’,’’) 添加指定列

  1. 修改数据

Update info set name =’张三’ where code =’p001’

  1. 删除数据

Delete from info where code =’p001’

  1. 查询数据:

普通查询:

Select * from info 查所有的

Select code,name from info 查指定列

条件查询:

Select * from info where code =’p001’

Select * from info where name=’张三’ and nation =’n001’

Select * from info where name=’张三’ or nation =’n001’

排序查询:

Select * from info order by birthday #默认升序asc  降序desc

Select * from car order by brand,oil desc #多列排序

 

聚合函数:

Select count(*) from info #取个数 可以写*也可以写主键列 一般写主键列(占内存少)

Select sum(price) from car

Select avg(price) from car

Select max(price) from car

Select min(price) from car

分页查询:

Select * from car limit 0,5 #跳过n条数据,取m条数据

分组查询:

Select brand from car group by brand #简单分组查询

Select brand from car group by brand having count (*)>2 #查询系列里面车的数量大于2的系列

去重查询:

Select distinct brand from car

修改列名:

Select brand as ’系列’ from car

模糊查询:

Select * from car where name like ‘_迪%’  %代表任意多个字符 _代表一个字符

离散查询:

Select * from car where code in (‘c001’,’c002’,’c003’)

Select * from car where code not in (‘c001’,’c002’,’c003’)

高级查询:

  1. 连接查询

Select * from info,nation #得出的结果称为笛卡尔积

Select * from info,nation where info.nation=nation.code

Join on

Select * from info join nation #join 连接

Select * from info join nation on info.nation=nation.code

  1. 联合查询

Select code,name from info

Union

Select code,name from nation

  1. 子查询

1)  无关子查询

Select code from nation where name=’汉族’ #取nation表中查询汉族的民族代号

Select * from info where nation=()#在info表中查询民族代号为上一个查询结果的所有信息

Select * from info where nation=(Select code from nation where name=’汉族’)

子查询的结果被父查询使用,子查询可以单独执行的称为无关子查询

2)  相关子查询

Select * from car where oil<(该系列的平均油耗)

Select avg(oil)from car where brang=’值’ #查询某系列的平均油耗

Select * from car a where oil<( Select avg(oil) from car b where b.brang=’a.brand’)