MYSQL命令使用

Mysql 
    定义:
        DB:数据库 DBMS:数据库管理系统 SQL:结构化查询语言
        DBMS负责执行SQL语句,通过SQL语句管理数据库
        表:数据库的基本组成单元。
            表包括行和列
            行:称为数据/记录
            列:称为字段
            字段包括:字段名、数据类型、相关约束
    SQL语句分类:
    DQL(数据查询语言):查询语句,凡是select语句都是DQL。
    DML(数据操作语言):insert(增)、delete(删)、update(改),对表中的数据进行修改
    DDL(数据定义语言):create(增)、drop(删)、alter(改),对表结构修改
    TCL(事务控制语言):commit提交事务、rollback回滚事务。
    DCL(授权控制语言):grant授权、revoke撤销授权。
    
    命令:
    0.win10启动和停止服务
        net stop 服务名称;
        net start 服务名称;
    1.mysql登录
        mysql -u(接用户名) -p(接密码)(实例:mysql -uroot -p123456)
    2.mysql查看数据库
        show databases;
    3.mysql创建数据库
        create database *(名字);create(创造)
    4.mysql使用数据库
        use *(名字);
    5.mysql查看当前数据库有那些表 
        show tables;
    6.mysql初始化(初始化后有三个表)导入数据source(来源)
        source 接文件路径
    7.mysql查看表结构
        desc *(接表名);
    8.mysql查看当前使用的数据库
        select database ();
    9.退出命令
        exit
    10.查看表中数据
        select * from 表名;
    11.查看数据库版本号
        select version();
    12.\c用来终止一条命令
    13.简单查询(DQL)
        13.1、查询一个字段
            select 字段名 from 表名;
        13.2、查询两个或多个字段
            select 字段名,字段名 from 表名;
        13.3、查询所以字段
            select * from 表名;//缺点,效率低可读性差。
        13.4、给查询的列起别名
            select 字段名 as 别名 from 表名; //使用as给查询列起别名    可以把as取消,别名中有空格要用单引号括起来
        13.5、给数据乘以倍数(字段可以参加加减乘除运算)
            select 字段名*倍数 from 表名;//别名是中文要使用单引号括起来
    14.条件查询
        语法格式:
            select 字段 from 表名 where 条件;
            条件有如下条件:
            =(等于),<(小于),>(大于),!=(<>也代表不等号),<=(小于等于),>=(大于等于)
            between...and..(>=and<=)//在两者之间,要遵循左小右大,包含两边的值
            and表示并且
            or或者
            in 包含,相当于多个or (not in 不在这个范围)
            not not可以取非,主要在is或in中
            like like称为模糊查询,支持%或下划线匹配
            %匹配任意多个字符
                找出名字含有O的
                select ename from emp where ename like '%O%';
                
            下划线,一个下划线匹配一个字符
                找出第二个字母是A的
                select ename from emp where ename like '_A%';
            \转译字符,如找出名字中有下滑线 '%\_A%'
    15.排序
        15.1、查询所有员工薪资并排序
                select ename,sal from emp order by asl;
        15.2、降序排序
                select ename,sal from emp order by asl desc;
        15.3、升序排序
                select ename,asl from emp order by asl asc;
        15.4、先按员工薪资升序排,薪资相同,按照名字升序排
                select ename,asl from order by asl asc,ename asc;
                sal在前,会先按sal排,只有sal相同才会按ename排
        15.5、根据字段位置排序
                select ename,asl from order by 2;按照字段位置排,第二列排序
    16、综合:找出薪资1250到3000之间的员工,薪资按降序排
            select 
                ename,sal 
            from 
                emp 
            where 
                1250>=and=<3000
            order by 
                sal
            desc;
            关键字顺序不能变必须select from where order by 的顺序
            执行顺序:第一步:from
                      第二步:where
                      第三步:select
                      第四步:order by(排序总是最后执行)
    17、数据处理函数
        select 后面可以跟字段名,也可以直接跟个数据,如果跟的是字段名则会根据表结构生成相同多个数据值
        17.1、数据处理函数又被称为单行处理函数
            单行处理函数特点:一个输入对应一个输出。
            lower 转换小写
                select lower(ename) from emp;//将员工名字小写输出
            upper 转换大写
                select upper(ename) from emp;
            sbustr 取子串
                sbustr(截取字符串,起始下标,截取长度)//起始下标从1开始
                找出员工名字第一个字母为A的
                select ename from emp where ename = 'A%';
                select ename from emp where sbustr(ename,1,1)='A';
            concat函数进行字符串拼接
                concat(第一个字符串,第二个字符串)
                首字母大写
                select concat(upper(sbustr(ename,1,1),sbustr(ename,2,length(ename)-1)) from emp ;
            length 取长度
                length(要取的字符串)
            trim 去空格
                截取字符串的空格
                trim('    KING')//等于King
            str_to_date 将字符串转化为日期
                
            date_format 格式化日期
            format 设置千分位
            round 四舍五入
                round(123.456,0)//=123 0表示取到整数位。保留几个小数就写几也可以为负如round(12345.22,-1)=12350
            rand() 生成随机数
                生成100以内随机数
                round(rand()*100,0)
            ifnull 可以将null转换成一个具体的值
                在所有数据库中只要有null参与运算结果就为null
                用法:ifnull(数据,当作哪个值)
            case..when..then..when..then..else.end
            如果..就..如果..就..如果..就..其他..结束
                      
        

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值