mysql

SQL:结构化查询语言分6个部分。

  •         DDL: Data Definition Language            数据定义语言
  •         DML: Data Manipulation Language            数据操作语言
  •         DQL: Data Query Language                数据查询语言
  •         DCL: Data Control Language                数据处理语言(授权之类的)
  •         CCL: Cursor Control Language            指针控制语言(用于存储过程的,等Oracle讲)
  •         TPL: Transaction Processing Language    事务处理语言

一、DDL数据定义语言,定义数据库对象,创建、修改、删除库/表的结构

1、查询数据库:show databases
2、切换数据库:use 数据库名称
3、创建数据库:create database 名字 (character set utf8)
4、删除数据库:drop database 名字
5、删除数据库编码:alter database 名字 character set utf8
6.、数据类型

  • int 整形
  • double 浮点型 double(5.2)
  • decimal 浮点型
  • char 固定长度的字符串,最长255
  • varchar 可变长度的字符串.最长65535
  • text 字符串类型,分为:很小,小,中,大(mysql独有)
  • blob 字节类型,分为:很小,小,中,大
  • date 日期类型,格式是yyyy-MM-dd
  • time 时间类型,格式是hh:mm:ss
  • timerstamp 时间戳类型

7、表的操作:
创建表:create table 表名(列名 列类型...)
查询表:show tables
查看表结构:desc 表名
删除表:drop table 表名
修改表内容:alter table 表名+
添加列:add
修改列类型:modify 列名 列类型
修改列名:change 原列名 新列明 列类型
删除列:drop 列名
修改表明称:rename to 新表名

二、DML数据操作语言,定义数据库记录,增删改:表的记录

(判断语句有=、!=、<>、>、<、>=、<=、between...and、in(...)、is null,not,and,or)
1、插入数据:insert into 表名 \(列名...)可以省略,但是必须全部match\ values(列值...)
2、修改内容:update 表名 set 列名=新的列值where \修改的地方\or
3、删除数据:delete from 表名 where \修改的地方\

三.DCL数据控制语言,定义访问权限和安全级别

1、创建用户:create 新用户名@localhost identified by '密码'
2、登录用户:mysql -u用户名 -p密码 (-localhost)
3、授权:grant 权限... on 数据库.表名 to 用户名@ip地址
                 grant all on 数据库.  to 用户名@ip地址
4、撤销权限:revoke 权限... on 数据库.表名  to 用户名@ip地址
5、查看权限:show grants from 用户名@ip地址
6、删除用户:drop user 用户名@ip地址

四、DQL数据查询语言,查询不会修改数据库表记录

1、字段控制,查询表的内容:select (distinct去除重复的列)列名... from 表名
                                                   select   from 表名
2、查询指定列:selcet 列名 from 表名
3、查询列(去除重复列名,相同列名只会显示一列):select distinct 列名 from 表名
4、列运算:select 列名 1、5\列名+列名 from 表名
                     select  ,列名+ifnull(列名,0) from 表名\列名中如果有null更换为0
5、字符串做连接:select concat(列名,列名) from 表名\两个字符串的列连接在一起
6、给运算后的列起名字:select 列名 1、5 (as) 新列名 from 表名
7、可以使用条件控制语句:select 列名 from 表名 where 列名>1000 or\and 列名<50000
                                                         列名 between 2000 and 3000
                                                         列名 in('某个值','某个值')
8、模糊查询:select  from 表名 where 列名 like '张__'(某一列中了名字像张..的,几个_下划线就是后面几个字符)
                             '%张%'(%匹配多个字符,包括0,前后都字符,只有中间有张)
9、排序:select  from 表名 order by 列名  asc\desc(指定某一列按照asc升序排列,或desc降序排列)
                 select  from 表名 order by 列名  asc\desc,再一列  desc,再一列  desc(如果存在相同时引入第n列参加排序)
10、select count(列名) from 表名       计算表中某个列中不为null的列数
        select count( \或任意数字) from 表名       所有列中不为null的列数(只要某一项中有一个数值不为null就参加运算)
11、select sum\max\min\avg(平均)(某一数字列) from 表名                          
12、分组:select 列名,count( ) from 表名 group by 列名   这是以某一列的不同列名来分组,展示出不同组的人数,在列名后面只能放函数
          select address,count( ) from mydb1 where age>15 group by address having count( )>=2
          查找年龄大于15 并且分组后组内的人数大于2人的
13、select  from 表名 limit n,m   从第n行开始查询m行      
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值