mysql系列_MySQL系列

一、mysql中的创建和数据类型

MySQL创建:

1.创建数据库

create database test2;

2.删除数据库

drop database test2;

3.创建表

create table ceshi

(

ids int auto_increment primary key,

uid varchar(20),

name varchar(20),

class varchar(20),

foreign key (class)  references class(code)

);

create table class

(

code varchar(20) primary key,

name varchar(20) not null

);

**自增长 auto_increment

**主键 primary key

**外键 foreign key (列名)  references 主表名(列名)

**非空 not null

4.删除表

drop table ceshi;

注意:

1.类型包含长度的在类型后面加括号,括号里面写长度

2.上一列写完加逗号

3.最后一列不要写逗号

4.在每一条SQL语句写完之后要加分号

5.如果有外键关系,先创建主表

mysql中的数据类型:

MySQL有三大类数据类型, 分别为数字、日期\时间、字符串, 这三大类中又更细致的划分了许多子类型:

1、数字类型

整数: tinyint、smallint、mediumint、int、bigint

浮点数: float、double、real、decimal/

2、日期和时间: date、time、datetime、timestamp、year

3,、字符串类型

字符串: char、varchar

文本: tinytext、text、mediumtext、longtext

二进制(可用来存储图片、音乐等): tinyblob、blob、mediumblob、longblob

二、MySQL增删改查基本操作

1.注释语法:--,#

2.后缀是.sql的文件是数据库查询文件

3.保存查询

4.在数据库里面 列有个名字叫字段   行有个名字叫记录

CRUD操作:

create 创建(添加)

read 读取

update 修改

delete 删除

1、添加数据

insert into Info values('p009','张三',1,'n001','2016-8-30 12:9:8') ;

给特定的列添加数据

insert into Info (code,name) values('p010','李四');

自增长列的处理

insert into family values('','p001','数据','T001','数据',1);

insert into 表名 values(值)

2、删除数据

删除所有数据

delete from family

删除特定的数据

delete from Info where code='p001'

delete from 表名 where 条件

3、修改数据

修改所有数据

update Info set name='徐业鹏'

修改特定数据

update Info set name='吕永乐' where code='p002'

修改多列

update Info set name='吕永乐',sex=1 where code='p003'

update 表名 set 要修改的内容 where 条件  tno =

4、读取数据

(1)简单读取,查询所有列(*)  所有行(没有加条件)

select * from Info

(2)读取特定列

select code,name from Info

(3)条件查询

select * from Info where code='p003'

(4)多条件查询

select * from Info where code='p003' or nation='n002' #或的关系

select * from Info where sex=0 and nation='n002' #与的关系

(5)关键字查询(模糊查询)

查所有包含奥迪的汽车

select * from car where name like '%奥迪%'; #百分号%代表任意多个字符

查以'皇冠'开头的所有汽车

select * from car where name like '皇冠%';

查询汽车名称中第二个字符是'马'的

select * from car where name like '_马%'; #下划线_代表任意一个字符

(6)排序查询

select * from car order by powers  #默认升序排列

select * from car order by powers  #升序asc 降序 desc

先按brand升序排,再按照price降序排

select * from car order by brand,price desc

(7)范围查询

select * from car where price9()>40 and price<60

select * from car where price between 40 and 60

三、MySQL中的多类型查询及高级查询操作

离散查询

select * from car where price=30 or price=40 or price=50 or price=60;

select * from car where price in(30,40,50,60)取出数据

select * from car where price not in(30,40,50,60)去掉数据

聚合函数(统计查询)

select count(*) from car

select count(code) from car #取所有的数据条数

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,10  #分页查询,跳过几条数据(0)取几条(10)

规定一个每页显示的条数:m

当前页数:n]

select * from car limit (n-1)*m,m

去重查询

select distinct brand from car

分组查询

查询汽车表中,每个系列下汽车的数量

select brand,count(*) from car group by brand

分组之后,只能查询该列或聚合函数

取该系列价格平均值大于40的系列代号

select brand from car group by brand having(加条件) avg(price)>40

取该系列油耗最大值大于8的系列代号

select brand from car group by brand having max(oil)>8

高级查询

(1)连接查询

SELECT t1.`Name`,t2.Brand_Name FROM brand t2,car t1 -- 笛卡尔乘积

WHERE t2.Brand = t1.Brand

-- 多表连接查询

SELECT t1.`Name`,t2.Brand_Name,t3.prod_name

FROM car t1

LEFT JOIN brand t2

ON t1.Brand = t2.Brand

LEFT JOIN productor t3 ON t2.Prod = t3.Prod

(2) 联合查询 字段数必须一样

SELECT `Name`,Price FROM car

UNION

SELECT Brand_Name,Brand_Memo FROM brand

(3)子查询

SELECT * FROM car

WHERE car.brand in

(SELECT Brand FROM brand WHERE Prod = 'p001')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值