十 使用Like实现模糊查询
基本语法:select * from table_Name where column like (匹配条件)
说明:“%”匹配任意长度的(长度可以为0)字符串,“_”匹配任意单个字符,“[]”:匹配所给定范围或集合中的任意单个字符,“[^]”匹配所给定的不在所给定的集合或范围中的任意单个字符,通配符或字符串必须用单引号括起来
示例:查询所有姓李的同学地信息
查询所有学生名字中第二个字为“冰”的同学的信息
查询所有编号中含有’e,t,y’字符的班级信息
查询所有编号中不含有’e,t,y’字符的班级信息
十一 使用is null
基本语法:
说明:查询指定列为输入数据的数据行,通常用在where语句中
示例:查询还没有分配班级的学生的信息
十二 使用compute进行计算
基本语法:select * from table_name where 查询条件 compute 聚合函数
说明:用来计算总计或进行分组小计,总计或小计值作为附加行出现在查询结果中
示例:计算在编号为‘001’班级的学生的信息并统计该班有多少个学生
十三 使用compute by分组查询结果
基本语法:select * from table_Name [where..] order by column compute 聚合函数 by column
说明:在使用compute by之前必须先使用order by 对要进行分组的列进行排序,注意,在oerder by 中进行排序的列的数量和顺序必须和compute by 后的项一样
示例:根据不同班级分组统计各个班级学生的信息
十四 使用group by
基本语法:select * from table_name [where…] group by column
说明:在select 子句中使用聚合函数时,group by计算每组的汇总值,使用group by子句时,在select 子句中出现的列名或者出现在聚合函数中,或者出现在group by 子句后面,否则会抱错,另外group by后面还可以恩 with cube||rollup,
示例:统计每个班级有多少学生,不显示学生的信息,只显示统计信息
十五使用having语句
基本语法:select * from table_name [where …] group by column having …
说明:having子句用于限定对组或者聚合函数的查询条件,该子句常用于group by 子句后面,在查询结果分组后对组判断是否满足查询条件,在分组之前可以用where语句判断查询条件,使用where比使用having更有效,因为它先将不满足条件的行过滤掉,从而减少了要进行分组的行数
示例:分组统计除编号为‘001’外所有班级学生的人数