您的位置:首页 > 数据库

SQL行列互换和分页和DCL

2020-06-29 05:03 1046 查看

用到的技术:

1,as  把列名更改

2,用if(A=/>B,1,2) 函数表示 如果A>/ =B则输出1   否则输出2

语句

select

    列名   as   仓库名称,

    max( if (月份='一月份' ,要显示的列名,0 ) )  as  一月份,

    max( if (月份='二月份' ,要显示的列名,0 ) )  as  二月份,

    max( if (月份='三月份' ,要显示的列名,0 ) )  as  三月份

from  表名

group by  列名;

==================解释=============

原来的表格:

仓库名称              数量                        月份

     A                       100                      一月份

     B                      1000                      一月份

     C                        10                        一月份

     A                         200                      二月份

     B                        2000                    二月份

     C                         20                      二月份

     A                         300                      三月份

     B                         3000                   三月份

     C                         30                     三月份

 

查询出来的结果是:

仓库名称               一月份             二月份               三月份

    A                         100                  200                  30

     B                         1000                 2000               3000                          

     C                          10                     20                  30

 

===================================分页技术=====================

关键词           limit a,b;

                a:想要显示的起始行索引(0起始);

                b:表示显示多少条语句;

 

先查询 select * from student order by desc limit 5,2;

从五号索引向后展示两行数据

==========================DCL========================

 数据控制语言   用户权限:

        grant        赋予

        remove    回收

MySQL配置环境变量

通过root账号查看MySQL数据库中的user表格 里面记录了所有用户的信息

     在user表格之中 有用的列如下:

     user列   (用户列)

     host列(展示用户可以访问数据库的ip地址)

     password列(展示密码)

     密码列没有可以查询此命令  authentication_string

1,先创建一个新的用户   

    database table user

    create user  ' 用户名 ' @ ' IP ' identified by ' 密码 ';

    create user  ' liudong ' @ ' localhost ' identified by ' 123456 ';

    创建成功后的用户只有一个默认的权限Usage只允许登录

    show grants for  '用户名'@'IP '(查询IP地址下的此用户名的权限)

2,给新用户赋予权限

 grant 权限 on 数据库名.表格名     to   ' 用户名 '@' IP ';

 grant all on * . *   to   ' liudong  ' @ ' localhost ' ;

 flush privileges;(刷新表格)

3,注销 用新用户登录

通过cmd窗口(想要使用cmd需要先配置环境变量)

  exit

  mysql -u 用户名 -t 

  输入密码

  登录成功

4,回收用户权限

 revoke 权限 on 数据库名.表格名 from  ' 用户名 ' @ ' IP ' ;

 revoke all on *.* from  ' liudong ' @ ' localhost ' ;

5,修改用户的密码

 updata 表名 set authentication_string = password(' 新的密码 ') where 条件;

 updata 表名 set authentication_string = password(' 654321 ') where user= ' liudong ' ;

7,删除用户

drop user ' 用户名 ' @ ' IP ' ;

drop user ' liudong ' @ ' localhost ' ;

----------------------权限英语----------------

 

 

 

 

 

 

 

 

 

 

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: