mysql入门

登陆:mysql -u root -p

创建一个使用utf-8字符集的数据库:create database 数据库名称 character set 'utf8';

创建数据库:create database 数据库名称 character set 编码 collate 校对规则;

查看数据库:show database(databases:所有数据库);

使用数据库:use databasename;

查看数据库创建信息: show create database;

查看当前使用数据库:select database;

删除数据库:drop database;

删除:truncate table-name:

创建表格:create table 表名称(

字段1 类型(长度) 约束,

字段2 类型()最后一个不加逗号

);

查看表:show create table 表名

show tables

desc 表名

选择表:select table

数据类型:

eg:create table 表名称(

usename varchar(10),//可变长度 自动变所需长度

usename2 char(100) //不可变长度 自动用空格补齐

);

大数据类型:

BLOB :Z字节(电影 MP3)

TEXT :字符(文本的内容)

数值型:

INT BIGINT FLOAT DOUBLE TINYINT SMALLINT

逻辑性:BIT

日期型:

DATE:年月日

TIME:时分秒

DATETIME:年月日时分秒 字符为空就字段为空

TIMESTAMP:年月日时分秒 设置字段为空,用系统时间

添加新字段:

alter table 表名称 add 字段名称 数据类型() 约束;

修改数据类型,长度,约束

alter table 表名称 modify 字段名称 数据类型() 约束;

删除某个字段:

alter table 表名称 drop 字段名称 ;

修改字段名称:

alter table 表名称 change 旧字段名称 新字段 数据类型() 约束;

修改表名称:

rename table 旧表名 to 新表名;

插入数据:insert into 表 (字段1,字段2,) values(值1,’字符串和日期类型要单引括起‘)

insert into 表名称 values(值1,’字符串和日期类型要单引括起‘)

修改所以sql语句:update 表称 set 名称 =xxx;

指定修改:update user set 名称 =xxx,xx = ‘xxx’ where id=‘xx’

在原基础上增加: update user set sal =sal+xx where username

查询表中信息:select * from 名称;

删除表内容:delete from 表名称 where money=30000;

删除表中所以相同内容:delete from 表名称 where money=30000;

查询单个名称和对应信息:select 名称,名称 from 表名称;

在某个名称加值:select 名称,名称+10,名称+10 from 表名称;

去除制定字段重复数据:select distinct 名称 from 表名称;

查询某个数据:select uesename,名称 from 名称 where 字段名称>90;

使用别名表示学生分数:select usename,(名称+名称+)as(可省略) 别名 from 表名称;

事物查询:start transaction;

<>:不等于

turn

where后可跟 in(代表范围)

like(模糊查询)张_ %张(以张结尾) %张%(有张就行)

and or not(非)between-and

升序和降序:order by 字段 asc(升)/desc(降)(写后面)

聚合函数

select count(*/名称)(求行数量)/sum(求一列数据的和)/avg(求平均分)/max()/min() from 表名称

分组

查所有数据,默认分一组:select * from名称;

根据字段分组:group by 字段 having 条件; 数据分类

group_concat:数据种类。

约束

唯一约束:声明字段是唯一的,值不能相同 unique

非空约束:字段不能为空 not null

主建:primary key; 一张表只能有一个

无负字符:unsigned;

主建自增:auto_increment;后面的id填null;

外键:dno int,,保证数据的完整性

foreign key (dno) references(映射到该表中字段) 对应表名

删除外键:alter table table-name drop foreign key 外键名称。

笛卡尔积

select * from 表1,表2;

内链接查询

普通内连接:select * from 主表名称 inner join 外表名称 on 主键名称 = 外键名称;必须主外键关联

隐式内连接:select * from 主表名称,外表名称 where 主键名称 = 外键名称;不需要主外键关联

可以用普通内连接一定可以用隐式内连接

查询的是两张表交集数据 主外键有关联的数据;

外链接查询

左链接:select * from 左表名称 left outer join 右表名称 on 主键=外键;

外连接:select * from 右表名称 right outer join 左表名称 on 主键=外键;

outer可省略;

查询左/右表 所有数据

子查询:select username,english from 表名称 where english > (select avg(english) from 表名称);

子查询(定义):查询语句的嵌套,

in(20,30):有20,30这个数

varchar(可变)和char

多表连接

插入语句:insert

删除表数据:drop ,delete

正则表达式

约束,主键,外键

decimal:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值