mysql基础知识总结

sql的定义:

SQL 是用于访问和处理数据库的标准的计算机语言。

SQL 指结构化查询语言 - SQL 使我们有能力访问数据库 -

SQL 是一种 ANSI 的标准计算机语言 (注:ANSI,美国国家标准化组织)

MySQL 定义:

- MySQL 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

- MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。

mysql数据库的登录操作

mysql -h 主机名

-u 用户名

-p:在‘超级终端’中可以使用命令的方式进入到mysql数据库的控制管理交互程序。

h:后面接的是主机名,表示你要连接到哪台主机的MySQL数据库。

u:后面接的是用户名,MySQL默认的就是root。

p:指定需要使用密码登陆MySQL数据库,如果密码为空,该参数可以省略。

mysql数据库常用操作

查看mySql中的数据库数据 show databases;

查看正在使用的数据库 select database();

进行对应数据库信息的创建操作 create database 数据库名;

在创建数据库的时候制定编码格式,一般为utf8 create database 数据库名 character set utf8;

选择要操作的数据库 use 数据库名; 进行对应数据库的删除操作 drop database 数据库名;

MySQL 常用数据表格操作

进行对应数据表信息的创建操作 create table 数据表名();

字段属性不为空 not null

字段属性整型不包含负数 int unsigned

设置为主键:primary key

设置为外键 :foreign key ,foreign key (Id_p) refernces persons(Id_p)

自增长,aotu_increment

自增长从1000开始 aotu_increment=1000,

查看对应的表结构 describe 表名;

查询创建表示的conment说明数据信息 :show full fields from ih_user_profile;

进行对应数据表的删除操作 drop table 数据表名;

为指定数据表中添加对应的属性 alter table 表名 add 属性名 类型;

为指定的数据表中的属性进行修改操作 alter table 表名 change 老的属性名 新的属性名 类型;

进行指定数据表中对应属性的删除操作 alter table 表名 drop 属性名;

重命名数据库表

alter table 数据库表名 rename 新数据库表名;

撤销外键约束

alter table 数据库表名

批量替换指定数据字符串信息 update 数据库表名 set default_image_url=replace(default_image_url, 'http://10.211.55.5:8888', 'http:/xxxx.xx.xx.xx:8888')

mysql常用数据操作

对应数据的添加操作

insert into 数据表名 (属性1、属性2、属性3) values (内容1、内容2、内容3);

删除指定数据表中的数据

delete from 数据表名;

数据表对应数据的修改操作

update 数据表 set 属性1=内容1;

数据的条件查询 select 列名称 from 数据库表名 where 查询条件;

过滤查询出来的重复数据 distinct

逻辑与/逻辑或。

and/or

注:如果在查询条件中,使用了or与and,那么and的优先级要高于or,解决的办法是添加小括号()

逻辑非 not 为空/不为空 is null/is not null

like与通配符使用实现模糊查询,in判断字段是否在其后面的小括号中

like/in

通配符%/_:%表示任何字符出现任意次数,下划线只能匹配一个字符。

对搜索出来的数据按照一定格式来显示

concat

concat(name,'(',sum,')')

分组查询(group by 必须在where子句之后,在order by子句之前)

group by

类似于之前使用的where过滤一样,如果想要对分组的结果进行过滤的话,那么就需要使用having

having

指定字段进行排序

order by asc/desc

ASC 顺序操作

DESC 逆顺序操作

分页显示 limit(3,3)

第1个数字,表示开始显示的位置

第2个数字,表示显示个记录的个数

默认显示的位置是从0开始的

内联结查询

inner join ... on

SELECT column_name(s) FROM table_name1

INNER JOIN table_name2

ON table_name1.column_name=table_name2.column_name

左联结查询,与inner join ... on 操作类同

left join ... on

右联结查询,与inner join ... on 操作类同

right join ... on

组合查询 union/union all

SELECT column_name(s) FROM table_name1

UNION

SELECT column_name(s) FROM table_name2

注:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。

MySQL 常用的聚合函数,可与分组配合使用

返回某列的平均值 avg()

返回某列的行数 count()

返回某列的最大值 max()

返回某列的最小值 min()

返回某列值的和 sum()

整型
tinyint:有符号值:-128到127 无符号值:0到255(2^8-1)
smallint:有符号值:-32768到32767 无符号值:0到65535(2^16-1)
mediumint:有符号值:-8388608到8388607 无符号值:0到16777215(2^24-1)
int:有符号值:-2147483648到2147483647 无符号值:0到4294967295(2^32-1)
bigint:有符号值:-2^63到2^63-1 无符号值:0到2^64-1

浮点型
float(M,N):小数加整数部分一共是M位,N表示小数位;总共占用4字节
double(M,N):小数加整数部分一共是M位,N表示小数位;总共占用8字节

时间类型
date(4字节):1000-01-01/9999-12-31 YYYY-MM-DD 日期值
time(3字节):'-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
year(1字节):1901/2155 YYYY 年份值
datetime(8字节):1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值

字符类型
char:0-255字节 定长字符串
varchar:0-255字节 变长字符串
tinytext:0-255字节 短文本字符串
text:0-65535字节 长文本数据
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值