首页 > 数据库 >mysql基本操作

mysql基本操作

时间:2022-11-04 19:35:43浏览次数:39  
标签:join 数据库 mysql 查询 字段 表名 基本操作 select

一、权限操作

#1、查询当前用户
select user()

#2、设置密码
set password = password('123456')

#3、给具体某个ip设置账号密码,用来访问数据库(公网ip)
create user 'ceshi100'@'192.168.65.1' identified by '333';

#4、给具体某个网段下的所有ip设置共同的账号密码,用来访问数据库(公网ip) %代表任意的ip 0~255
create user 'ceshi101'@'192.168.65.%'  identified by '444';

#5、所有的ip都可以登录到服务器数据库中
create user 'ceshi102'@'%' identified by '555';

#6、刷新权限
flush privileges

#7、查看哪个ip哪个用户的权限
show grants for 'ceshi102'@'%';

#8、grant 权限 on 数据库.表名 to '用户名'%'ip地址' identified by '密码'
#select 查看数据表的权限
#insert 插入数据表的权限
#update 更新数据表的权限
#delete 删除数据表的权限
#drop   删除数据库的权限
grant select,drop on *.* to 'ceshi102'@'%' identified by "333"
# all 代表所有权限
grant all on *.* to 'ceshi102'@'%' identified by "333"
# 移除权限
# 单个
revoke drop on  *.* from 'ceshi102'@'%'
# 所有
revoke all on  *.* from 'ceshi102'@'%'
# 删除用户
drop user 'ceshi102'@'%'

二、操作数据库

#1、创建一个数据库
create database db0824 charset utf8;

#2、查看所有数据库
show databases

#3、修改数据库
alter database db0824_1 charset gbk

#4、删数据库
drop database db0824_1;

三、数据库表操作

#1、选择数据库
use 数据库名

#2、增加字段
create table t1(id int , name char);

#3、查看所有表
show tables;

#4、查看表结构
desc t1

#5、修改表操作
#修改数据类型
alter table t1 modify name char(5)
#修改字段
alter table t1 change name newname char(4)

#6、删除表
drop table t1;

四、数据类型

 

 

 

 

 

 

 

 

 五、数据库表数据操作

1、增

insert into 表名 values(列值)

2、查

select * from 表名

3、改

update 表名 set 列明=值

4、删

delete from 表名 where 条件

六、相关函数

1、where

where 条件的使用
    """功能: 对表中的数据进行过滤筛选"""
    """
    1.判断的符号
    = > >= < <= != <> 不等于 
    2.拼接天骄的关键字
    and or not
    3.查询范围区间 between
    between  小值 and 大值 [小值,大值] 查询两者之间的这个范围所有数据
    4.查询某个值在具体某个范围里 in
    in(1,2,3,4)
    5.模糊查询 like "%" "_" 通配符        
        like "%a"  匹配以a结尾的任意长度的字符串
        like "a%"  匹配以a开头的任意长度的字符串
        like "%a%" 匹配含有a字母的任意长度的字符串
        like "_a"  个数一共是2个字符,必须以a结尾,前面字符随意
        like "a__" 个数一共是3个字符,必须以a开头,后面字符随意

2、group by 

"""group by 字段 对当前字段进行分类 , by后面接什么字段,select 就搜什么字段"""
    select 字段 from 表名 group by 字段;
    # 聚合函数
        # count 统计总数  *所有
        select count(*) from 表名;
        # max   统计最大值
        select max(字段) from 表名;
        # min   统计最小值
        select min(字段) from 表名;
        # avg   统计平均值
        select avg(字段) from 表名;
        # sum   统计总和
        select sum(字段) from 表名;

3、having

#在分类分组之后,进行二次数据过滤
#一般是配合group by 使用,分组之后过滤
select 字段1,字段2 from 表名 group by 字段1 having 字段2 > 10000

4、order by

#排序, 按照什么字段进行排序
# asc  升序: 从小到大 (默认)
# desc 降序: 从大到小
select * from 表名 order by 字段1, 字段2 desc; #先按照字段1排序,如果相同则按照字段2排序

5、limit

限制查询条数 (数据分页)
    """limit m,n m代表从第几条数据进行查询,0代表第一条,n代表的查询几条"""
    select * from 表名 limit 0,5  # 从第一条数据开始搜, 搜5条数据
    select * from 表名 limit 5,5  # 从第六条数据开始搜, 搜5条数据
    
    # 只搜索一条数据
    select * from 表名 limit 1
    # 只搜索3条数据
    select * from 表名 limit 3
    # 搜索这个表中最后一条数据
    select * from 表名 order by 字段 desc limit 1

6、distinct去重

select distinct 字段 from 表名

七、多表查询

1、内连接

# 内连接 : (inner join ) -> 两表或者多表满足条件的所有数据查询出来(两表之间的共有数据)
    # 两表查询
    select 字段 from 表1 inner join 表2 on 必要的关联条件
    # 多表查询
    select 字段 from 表1 inner join 表2 on 必要的关联条件1 inner join 表3 on  必要的关联条件

2、外连接

# 外连接:    
# 1.左连接(左联查询 left join )  以左表为主,右表为辅,完整查询左表所有数据,右表没有的补null
select * from 表名1 left join 表名2 on 表名1.字段 = 表名2.字段;
# 2.右连接(右联查询 right join ) 以右表为主,左表为辅,完整查询右表所有数据,左表没有的补null
select * from 表名2 left join 表名1 on 表名2.字段 = 表名1.字段;

3、全连接

select * from 表1 left join 表2 on 表1.字段 = 表2.字段
union
select * from 表1 right join 表2 on 表1.字段 = 表2.字段

 

标签:join,数据库,mysql,查询,字段,表名,基本操作,select
From: https://www.cnblogs.com/songyunjie/p/16858890.html

相关文章

  • mysql查询时反应慢
    一、原因分析1.没有索引或者SQL没有命中索引导致索引失效2.单表数据量过多,导致查询遇到瓶颈。3.网络原因或者机器自身负载过高4.热点数据导致单点负载不均衡5、I/O吞......
  • mysql索引
    一、索引概念索引是帮助MySql高效获取数据的数据结构。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用数据,这样就可以在这些数据结......
  • MySQL---索引的数据结构
    索引的数据结构为什么使用索引索引及其优缺点概述优点缺点InNoDB中索引的推演索引之前的查找在一个页......
  • mysql连接超时的属性设置
    mysql连接超时的属性设置2022-10-2611:09:54.128[http-nio-6788-exec-5]ERRORo.s.t.i.TransactionAspectSupport#completeTransactionAfterThrowing[line:525]-App......
  • ContOS操作MySQL的基本操作
    一.安装MySQL安装mysqlyuminstall-ymysql-server设置开机自动启动systemctlenablemysqld.service检查开机自动启动是否设置成功systemctllist-unit-files|gre......
  • mysql锁
    一、全局锁全局锁就是对整个数据库实例加锁。MySQL提供了一个加全局读锁的方法,命令是 #全局锁Flushtableswithreadlock 当需要让整个库处于只读状态的时候,可......
  • MySQL函数-Group_Concat分组并行转列
    group_concat函数解析:1、concat()函数:  功能:将多个字符串连接成一个字符串  语法:concat(str1,str2)  结果:连接参数str1,str2为一个字符串,如果有任何一个参数为n......
  • Windows Server 2016部署MySQL 8.0 MGR
    环境介绍操作系统IP主机名MySQL版本WindowsServer2016192.168.1.91db18.0.31WindowsServer2016192.168.1.92db28.0.31WindowsServer2016192.......
  • MySQL---存储引擎
    存储引擎查看存储引擎设置DBMS默认存储引擎设置表的存储引擎创建表时指定存储引擎修改表时指定存储引擎存储引擎介绍......
  • MYSQL数据备份之mysqldump命令详解
    一、mysqldump简介mysqldump是MySQL自带的逻辑备份工具。它的备份原理是通过协议连接到MySQL数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert语......