zoukankan      html  css  js  c++  java
  • SQL基础语法

    命令行下命令:

    进入:mysql -uroot -p
    结束当前语句:分号;  或者 g
    创建数据库:create database dbname
    显示当前数据库:show databases
    使用某数据库:use test1
    显示当前使用数据库的所有表:show tables
    删除数据库:drop database test1
    显示表信息:desc tablename
    删除表:drop table tablename
    修改表(新增字段):alter table tablename add newcolumn int(3)
    删除表age字段:alter table tablename drop column age
    字段改名:alter table tablename change oldname newname int(4)
    
    增:insert into emp (ename,sal) values ('dony',1000)
    删:delete from emp where eanme='dony'
    改:updata emp set sal=4000 where ename='dony'
    查:selet * from emp
    

      

    特别:
    distinct  将查询的结果去重
    select distinct * from emp
    
    order by 排序   asc和默认是升序   desc是降序
    limit 分页  经常跟order by一起使用
    limit m,n  左开右闭区间,即(m+1,n]
    select * from emp order sal limit 1,3  表示查询的结果按照sal升序并查询第2到第3个
    
    聚合:相关函数:sum(求和)  count(计数)  max(最大)  min(最小)
    group by
    with rollup  是否对聚合后的结果进行再汇总
    having  对分类的结果再进行过滤
    where 和 having的区别就在于where是聚合前过滤,而having是聚合后过滤
    
    内外连接查询:
    内连接,仅选择相互匹配记录,inner join
    外连接,可以选择不匹配记录
    外连接分左连接(left join)和右连接(right join)
    左连接:左连接以左为主,查询的结果包含全部的左表(即使右表没有,右表记录为null)
    右连接:右连接以右为主,查询的结果包含全部的右表(即使左表没有,左表记录为null)
    select ename from emp left join dept on dept.deptno=emp.deptno
    
    子查询:
    查询的结果需要用到另外一个select语句,需要用到子查询(in,not in,=,!=,exists,not exists)
    如果查询出来的记录数唯一,可以用=代替in
    
    记录联合,两条语句之间加上关键字即可
    union all  直接合并在一起
    union       将合并的结果进行distinct去重操作
    

      

  • 相关阅读:
    Anaconda下载与安装
    短语,直接短语,句柄,素短语,最左素短语区分
    sublime text安装package control
    Json数据解析
    hbase shell命令
    Web三级联动,数据库到界面
    解决C#窗体项目在win10运行模糊的问题
    Java通过反射访问及修改类内的私有变量
    PyCharm更改.PyCharm配置文件夹存储位置
    MineCraft Forge开发mod踩坑记录
  • 原文地址:https://www.cnblogs.com/winv758241/p/8549375.html
Copyright © 2011-2022 走看看