美文网首页
坚持打卡学习第十天——数据操作语言(DML)

坚持打卡学习第十天——数据操作语言(DML)

作者: 去追星星 | 来源:发表于2021-12-25 19:06 被阅读0次

    1、增加(插入)insert

    insert into tbl_name(column1,column2,...) values(v1,v2...)
    

    2、删除数据delete

    delete from 表名 where 条件
    注:省略where条件删除所有数据
    

    3、修改数据updata

    updata tbl_name set column1=v1,column2=v2,... where 条件
    注:省略where条件修改所有数据
    

    4、查询数据select

    (1)查询所有字段

    select * from tbl_name;
    select column1,column2,column3,... from tbl_name;
    

    (2)去重distinct

    select distinct age from student;
    

    使用distinct关键字需注意:

    • distinct只能在select中使用
    • 在对一个或者多个字段去重时,distinct需要在所有字段最前面
    • distinct后面有多个字段,则需要所有字段都相同,才会去重

    (3)条件查询

    • 单一条件
    select * from tbl_name where column_name = '';
    
    • 多重条件
    select * from tbl_name where 
    column_name1 = '' and column_name2 = '';
    

    (4)限制查询结果的条数limit

    select * from tbl_name limit 3,5;
    

    注:

    • limit 初始位置(从哪一条数据开始), 记录数(显示几条)
    • limit后面参数都为正整数

    (5)分组查询group by

    • 单独使用
    select sex,name from user group by sex;
    
    • 搭配聚合函数
    select sex,count(sex) from user group by sex;
    

    (6)过滤分组having
    where与having区别:

    • 一般,where过滤数据行,having过滤分组
    • where查询条件中不能使用聚合函数
    • where在数据分组前进行过滤,having在分组后
    • where根据表中的字段进行过滤,having是根据前面已经查询出的字段进行过滤
    • where插叙条件中不可以使用字段别名

    (7)内连接inner join
    select <字段名> from <表1> inner join <表2> [on子句]

    select s.name,c.course_name from student s inner join course c
    on s.course_id = s.id;
    

    注:查询结果都是符合查询条件的,没有条件返回笛卡尔积
    (8)左外连接left outer join
    select <字段名> from <表1> left outer join<表2> <on子句>

    select s.name,c.course_name from student s left outer join course c
    on s.course_id = s.id;
    

    注:以左表为基表,返回所有信息,右表没有的返回null
    (9)右外连接right outer join

    select s.name,c.course_name from student s right outer join course c
    on s.course_id = s.id;
    

    注:以右表为基表,返回所有信息,左表没有的返回null
    多个表左/右连接时,在 on 子句后连续使用 left/right outer join或 left/right join
    。。。。。。

    相关文章

      网友评论

          本文标题:坚持打卡学习第十天——数据操作语言(DML)

          本文链接:https://www.haomeiwen.com/subject/nksdqrtx.html