• 表的完整语法增,删,改,查( 子查询 ),常用函数


    表的完整语法增删该查

    表的完整 增 语法

    1.所有数据按顺序插入
        insert [into] 表名 values (值1,……值n),[值1,……值n]
    
    2.指定字段匹配插入,可以任意顺序           按规定字段顺序指定插入
        insert [into] 表名(字段1,字段3……字段n) values(值1,值3,……值n)
    
    3,插入查询     按规定字段顺序指定插入
        insert [into] 新表名(字段1,字段3……字段n) select (字段1,字段3……字段n) from 原表名

    表的完整 删 语法

    会记录自增信息,操作日志记录,效率低
      delete from 表名 [条件]:  不加条件清空所有数据,会记录自增信息
    
    重置自增信息
      truncate table 表名

    表的完整 改 语法

    update 表名 set 字段1=值1,[字段2=值2,……] [条件]       无条件,全部改掉,加条件,满足条件的改掉

    表的完整 查 语法

    select [distinct] 字段1 [as 别名],…… 字段n [as 别名] from [库名.]表名 from [
                                                                    where  约束条件   +  比较运算符 | 区间运算符 | 逻辑运算符 | 相似运算符 | 正则匹配
                                                                    group by  分组依据  + 聚合函数 | having
                                                                    having  过滤条件 + 对分组后的帅选
                                                                    order by  排序
                                                                    limit(m,n)  限制显示的条数
                                                                ]

    简单查询

    select concat(area,"-",port) as '家乡' from emp

    concat() 字符串拼接
    distinct:去重前提:所查所有字段的综合结果完全相同,才认为是重复的,只保留重复中的一行数据
    select distinct area from emp
    select distinct area.port from emp   两行记录两个字段全重复才重复

    where:约束条件  +  比较运算符

    1.比较运算符
    = | < | > | <= | >= | !=
    
    2.区间运算符
    between 10 and 20
    in(10,20,30)
    
    3.逻辑运算符
    and | or | not
    
    4.相似运算符
    like '_owen%':模糊匹配字符串,_表示一个字符,%表示任意字符

    5.正则匹配
    select * from emp where name regexp '.*[0-9]+.*';
    group by: 分组 + 聚合函数 
    聚合函数:
        max():最大值
        min():最小值
        avg():平均值
        sum():和
        count():计数
        group_concat():组内字段拼接,用来查看组内其他字段

    子查询:一个查询作为另外一个查询的结果

    单例子查询:子查询语句的结果为一行数据,可以结合 = | < | > | <= | >= | != 运算符来完成父查询
    select salary from emp where salary > 10; # => 作为子查询
    select name, gender, area from emp where salary = (select salary from emp where salary > 10);
    多行子查询:子查询语句结果为一行数据,可以结合 in | all | any 运算符来查询
    in :任意单一值
    all:全部值
    any:任意多个值,子查询的每一个结果可以作为参考依据
    
    select * from emp where salary < all(select max(salary) '最高薪资' from emp where dep='教学部' group by gender);
    having 筛选:用在分组之后
    select dep, avg(salary) '平均薪资' from emp group by dep having avg(salary) > 6;
    order by排序:可以跟聚合函数一起用
    升序 asc
    降序 desc
    
    select * from emp order by age desc;
    limit 限制 :

    select * from emp limit 6,5;
    select * from emp order by salary desc limit 1;limit(m,n) 从 m+1 行显示 n 条


    常用函数

    concat(字段1,……字段n): 完成字段的拼接
    concat_ws(x,字段1,……字段n):完成字段的拼接,x为连接符
    lower():小写
    upper():大写
    ceil():向上取整
    floor():向下取整
    round():四舍五入







  • 相关阅读:
    python 正则表达式提取返回内容
    python session保持登录,新增地址,并删除,由观察可知,address_id决定删除的内容;
    unittest执行顺序,使用unittest.main()按照test开头,由09,AZ,az的顺序执行; 可使用TestSuite类的addTest方法改变执行顺序;
    开源系统DVWA,ECshop
    链接(url)中不能有汉字,遇到汉字,需要使用quote转换之后使用
    python 登录并获取session,使用session新增ecshop的草稿
    unittest单元测试,基于java的junit测试框架
    jmeter插件扩展
    使用响应的json数据判断订单查询是否成功;
    C言语教程第五章:函数(2)
  • 原文地址:https://www.cnblogs.com/liu--huan/p/10310745.html
Copyright © 2020-2023  润新知