mysql分部查询_MySQL的基础分部

MySQL的基本操作

#进入数据库

mysql -h localhost -uroot -p

#展示所有的数据库

show databases

#进入某一个数据库

use database_name

#展示某个数据库中的所有表

show tables

#退出数据库

exit&&quit

#允许用户远程登录

grant all on *.* to 用户名@'%'identified by '密码' #运行这句话,也就表示在MySQL的user表中创建了一个用户。

1. MySQL的基本数据类型:

(1)整数

3c4d178ac2cffba1011f935deb262f87.png

其中需要注意的是:bit(1) 一位,表示一个比特位。(常用与表示性别)

(2)浮点数

float:声明格式:float(m,n) m:总长度,n:小数点位数;默认为(10,2)

double:声明格式:double(m,n) m:总长度,n:小数点位数;默认为(16,4)

decimal:decimal(m,n),m:总长度,n:小数点位数,无默认值,主要精确的表示存款。

(3)字符串类型:

char:声明:char(n) 表示定长字符串。不足时用空格填充,超过时报错

varchar:声明:varchar(n),表示可变长度字符串,不足时以字符串长度,超过时,改变长度。(65535)

text:用户存放大文本

(4)日期类型:

date:表示日期 (年-月-日 YYYY-MM-DD)

time:表示时间 (时-分-秒 HH:MM:SS)

datetime:日期时间 (日期时间: YYYY-MM-DD HH:MM:SS),范围:1000 01- 00:00:00 - 9999-12-31 23:59:59

timestamp:时间戳 (时间戳: YYYYMMDDSSHHMMSS),范围:1970 01- 00:00:00 - 2037-12-31 23:59:59

(5)其他类型:

blob:存放二进制

clob:存放二进制

enum:枚举类型

json:json数据

2.SQL语句

sql是结构化的查询语句(SQL),是一种数据库查询和程序设计语言,用于存储数据以及查询、更新、和管理关系型数据库。用于数据库数据的增删改查、数据库对象的创建,修改,和删除、用户权限、以及事务。

sql语句的分类:

- DQL:数据查询语句:select

- DML:数据库操作语句:insert 、update 、delete

- DDL :数据库定义语句:create、alter、drop

- DCL:数据库控制语句:grant (授权)、revoke(取消授权)

- TCL:事务控制语句:COMMIT、ROLLBACK

(1)DDL

作用:用于删除、创建、查看、切换数据库、表

操作数据库

#创建数据库

create databse database_name charset=utf-8

#删除数据库

drop database database_name

#使用/切换数据库

use databse_name

#查看当前选择的数据库

select database()

操作表:

#展示数据库中的所有表

show tables

#创建表

create table t_table(field1 type,field type ...)

#修改字段:add|change|drop|modify

#添加字段

alter table t_name add field type

#添加字段位置到首位

alter table t_name add field type first

#修改已有字段位置

alter table t_name modify field1 type after/before field2

#修改字段名称

alter table t_name change old_name new_name type

#修改字段类型

alter table t_name modify field type

#删除字段

alter table t_name drop field

#删除表

drop table t_name;

补充:

change和modify的区别?

alter table 表名 modify 字段 属性 约束;

alter table 表名 change 旧字段 新字段 属性 约束;

#显示表的结构

desc t_name

#表的重命名

rename table old_name to new_name

#查看表的建表语句

show create table t_name;

(2)DML

用于操作数据的语句(不包括修改表的结构和属性)

插入数据

#插入一条完整的记录

insert into 表名 values(....)

#缺省插入(字段与值要对应)

insert into 表名(fields1,field2,field3...) values(value1,value2value3...)

#多行完整数据插入

insert into 表名 values(....),(...),(...),(...)

#将一张表中所有数据插入到另一张表中

insert into table1 select * from table2

修改数据

#update

update t_name set field1=value1 ,field2=value2,field3=value3 where ...

ps:如果不加where ,默认全部修改

删除数据

#删除一条记录

delete from t_name where ....

ps:如果不加where 默认删除表中的所有记录,但是自增不会重置

#清空表数据,并将自增设置为1,重新开始

truncate table userinfo;

(3)MySQL的备份与恢复

#数据导出

mysqldump –uroot –p 数据库名 > /Desktop/备份文件.sql

#数据导入(在导入数据库时,前提是此数据库已经存在,并且为空)

mysql –uroot –p < /Desktop/备份文件.sql

#加载数据文件

source /路径/文件名.sql

由于sql主要的就是DQL操作,所以后面的博文会详细介绍,这里暂时不写出。

3.MySQL中的函数

(1)聚合函数

#count 统计有多少行记录

select count(1) from emp; //1表示常量,每一条记录都有一个1,查看1的个数

#max 查看记录中某个字段最大的

select max(id) from emp;

#min 查看记录中某个字段最小的

select min(id) from emp;

#sum 查看记录中某个字段的总和

select sum(salary) from emp;

#avg 查段看记录中某个字的平均值

select avg(salary) from emp;

ps:在使用这些函数时,如果在加其他字段,可能显示的值不一样,默认是显示表中的第一行的字段值

(2)MySQL的加密函数

#md5加密函数(不可逆)

MD5(pwd)

#密码加密

passowrd(pwd)

#sha加密

sha(str)

(3)MySQL的内置函数

#数学函数

PI() //圆周率

Ceil(num) //向上取整

floor() //向下取整

round(num,保留的小数位数) //四舍五入,如果第二个参数为负数,从小数点前一会四舍五入。

Mod(5,2) //取模 相当于 5%2

Rand() //随机数,[0,1)

从表中随机取数据:select * from emp GROUP BY RAND() limit 2;

Pow(2,2) //2的2次方

#字符函数

replace(str,oldword,newold) //替换

lpad(str,len,padstr) //左填充,当字符串不够len时,用字符进行左填充

rpad(str,len,padstr) //右填充,当字符串不够len时,用字符进行右填充

trim() //删除首位的空格

#日期函数

Now() //当前的时间

Sysdate() //获取系统时间

Current_date() //获取系统当前日期

Current_time() //获取系统当前时间

Year(date) //获取日期中的年

Month(date) //获取日期中的月

Last_day(date) //获取当前月的最后一天(返回的是一个日期)

Date_add(date,interval num 单位) //计算日期(返回的是一个日期)

#例:

select date_add(now(),INTERVAL 2 month) //+2月

select date_add(now(),INTERVAL 2 day) //+2天

select date_add(now(),INTERVAL 2 year) //+2年

select date_add(now(),INTERVAL -2 year) //-2年

4.MySQL中运算符

MySQL中的运算符 主要用于select和from子句中:

例:

select 1+1,1*2,2/2,0 ; (除法,保留小数double类型)

dec64301dfea830202a3662405b34af8.png

整除:select 3 div 2 //返回1

0做除数: select 3 / 0 //返回null

算数运算符

+ - * / div(整除)

比较运算符

=(等于) >= <= !=(或者<>)

1表示:true, 0表示false

is null //是否为空 is not null //是否不为空

between and //在什么和什么之间

in //在什么范围中

any //在比什么其中之一怎么样

all //比所有都怎么样

逻辑运算符

and //与

or //或

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值