SQL语句

xiaoxiao2021-02-28  42

DDL(种类)作用是用来创建或编辑或删除数据库的单位 例如 建库 建表 编辑库 编辑表

create(创建) drop(删除)alter(编辑)

DML(种类)作用是用来添加或删除或修改表中的数据 例如添加数据 删除数据 修改数据

insert(添加) delete(删除) update(编辑)

DQL(种类)作用是用来控制数据库用户权限

grant(赋予)remove(删除)

数据库的基本命令:

1、登录控制台

    mysql -u用户名 -p密码

2、控制汉字乱码转换

     set names gbk

3、进入控制台之后,查看目前所有库

     show databases

4、进入指定数据库

     use 库名

5、查看一个库中所有的表

     show tables

6、查看表的结构

所有表能修改的前提是表中没有数据)describe 表名

SQL语句:

1、使用DDL建立数据库

     create database 库名

2、使用DDL建表

     create table 表名(列名 数据类型(最大长度)(约束)auto_increment (自增长),列名 数据类型(最大长度)(约束))

3、不满意表名 更换表名

     alter table 原表名 rename 新表名

4、向表中添加字段修改原表

     alter table 表名 add 要添加的字段名 字段类型(最大程度)约束

5、删除表中已有的字段

     alter table 表名 drop column 字段名

6、修改表中已有的字段类型和其他值

     alter table 表名 modify 字段名 修改的类型(最大长度);注意表中原有的数据

7、修改表中的字段 修改该字段名字 //(modify和change的区别 前者修改除了列名的所有的东西后者只能修改列名

      alter table 表名 change 原字段名 新字段名 数据类型(最大长度)

8、删除一张表  

      drop table 表名

9、删除一个数据库

      drop database 库名

10、查询表中所有数据

      select*from 表名

11、修改控制台编码格式

      set names 编码格式 中文 GBK //(控制台默认添加汉字是乱码所以会出现data too long)

12、DML语句添加一条记录并且添加所有列(单引号代表char或varchar或date)

       insert into 表名 values(列值1,列值2,‘列值3’)//添表中的全部字段

13、DML语句添加一条记录并且添加指定列 //(不填的字段需要default默认值后才能为null)

       insert into 表名 (指定列名,指定列名1)values(列值1,‘列值2’)

14、修改表中数据

       update 表名 set 字段=修改的值,字段=修改的值 where id=?

15、删除表中数据

        delete from 表名 where id=?

前条件: 在select和from之间的查询条件

        select 列名,列名 from 表名

       eg:select b_name,b_author from book  //查询所有行 每行查询指定的列

五个聚合函数

          count 总数

          eg:select count(*) as 总数 from book

          sum 求和

          eg:select sum(b_price) as 总价 from book

          max 最大值

          eg:select max(b_price) as 最贵 from book

          min 最小值

          eg:select min(b_price) as 最便宜 from book

          avg 平均值 

          eg:select avg(b_price) as 平均值 from book

后条件:范围查询:列名 between 值 and 值 

       eg:select*from book where b_price between 20 and 40

 后条件:集合查询:包含in 不包含 not in

       eg:select*from book where b_name in ('《幻城》','《活法》')

后条件:模糊查询:列名 like 值%  列名 like %值  列名 like %值%

         eg:select*from book where b_author like '%郭'

后条件:多重条件 :and (左右都满足) or (左右有一个满足)

      eg:select*from book where b_name='《幻城》'and b_publish='人民教育出版社'

分组查询:group by 一般和count(*)一起用

      一旦我们在count(*)前边添加了某个条件 这个条件就必须参与分组

      eg:select b_publish,count(*) from book group by b_publish

   eg:select b_name,count(*) from book group by b_name having count(*)>1

排序查询:order by 列名   asc(升序) desc(降序)

分页查询:limit start,end (每次我们的查询都从start开始查询end条记录)

      eg:select*from book order by b_code limit 0,3

连接查询:(用于两个表有关系时)

      eg:select cs.name,s.sname from classes cs,student s where cs.id=s.id

内连接:inner join

外连接:left out join on       right out join on

             

转载请注明原文地址: https://www.6miu.com/read-2630666.html

最新回复(0)