首页 > 数据库 >SQL语句使用group by时注意事项

SQL语句使用group by时注意事项

时间:2023-08-01 21:14:59浏览次数:48  
标签:语句 group 结果 -- SQL where having

1、group by 语句用来与聚合函数(COUNT、SUM、AVG、MIN、MAX)联合使用得到一个列或多个列 2、having 只能在group by之后(即使用having的前提条件是分组) 3、如果过使用where和having,那么where在前 4、当一个语句同时出现where、group by、having、order by的时候,执行顺序和编写顺序是:
  1. 执行where xxx对全表数据做筛选,返回第1个结果集;
  2. 针对第1个结果集中使用group by分组,返回第2个结果集;
  3. 针对第2个结果集中的每1组数据执行select xx,有几组就执行几次,返回第3个结果集;
  4. 针对第3个结果集执行having xx进行筛选,返回第4个结果集
  5. 针对第4个结果集排序
from --> where --> [ result1 ] --> group by --> [ result2 ] --> select () --> [ result3 ] --> having --> [ result4 ] --> order by --> output

标签:语句,group,结果,--,SQL,where,having
From: https://www.cnblogs.com/nliu/p/17599090.html

相关文章

  • MySQL字符串截取之substring_index
    substring_index(str,delim,count)str:要处理的字符串delim:分隔符count:计数 例子:str=www.wikibt.comsubstring_index(str,'.',1)结果是:wwwsubstring_index(str,'.',2)结果是:www.wikibt也就是说,如果count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容相......
  • MySQL 日期计算中的计算天数的方法(mysql日期计算天数)
    MySQL日期计算中的计算天数的方法MySQL作为一款高性能的数据库,可以支持日期计算功能,其中有两个函数可以计算出两个日期之间相差多少天数,那就是DATEDIFF和DATE_SUB函数。其中DATEDIFF函数是MySQL内置支持的函数,它可以计算两个日期之间的天数,DATE_SUB则是在DATEDIFF函数......
  • MySQL 日期计算中的计算天数的方法(mysql日期计算天数)
    MySQL日期计算中的计算天数的方法MySQL作为一款高性能的数据库,可以支持日期计算功能,其中有两个函数可以计算出两个日期之间相差多少天数,那就是DATEDIFF和DATE_SUB函数。其中DATEDIFF函数是MySQL内置支持的函数,它可以计算两个日期之间的天数,DATE_SUB则是在DATEDIFF函数......
  • mysql if 空字符串(如何使用mysql中的if函数处理空字符串)
    ysql中的if函数处理空字符串?ysql中,if函数可以用来实现条件判断。当我们需要处理空字符串时,可以使用if函数来判断字符串是否为空,然后根据判断结果进行相应的处理。if函数的语法如下:if(expr1,expr2,expr3)其中,expr1是条件表达式,如果该表达式的值为真,则返回expr2的值,否则返回expr3的值......
  • mysqlfrm工具使用及基于.frm和.ibd文件的数据恢复和.ibd迁移
    问题概述可以在数据库发生部分文件损坏,又没有相关备份时,利用mysqlfrm工具,读取数据库中表的.frm文件提取建表语句,结合.ibd文件做数据恢复。一、相关概念1、mysqlfrm工具mysqlfrm是一个恢复性质的工具,可以用来读取.frm文件并从该文件中找到表定义,生成ddl语句,生成的ddl语句多用于在另......
  • MySQL 连接语句优化技巧的示例和代码
    当涉及到实际案例时,以下是一些可以帮助实现快速查找的MySQL连接语句优化技巧的示例和代码:1.使用索引:CREATEINDEXidx_nameONyour_table(name);上述代码在名为your_table的表的name列上创建了一个索引。这将加快对该列的查询速度。2.编写有效的查询语句:SELECT*......
  • MySQL 排序一
    前言   排序是数据库中的一个基本功能,MySQL也不例外。用户通过Orderby语句即能达到将指定的结果集排序的目的,其实不仅仅是Orderby语句,Groupby语句,Distinct语句都会隐含使用排序。本文首先会简单介绍SQL如何利用索引避免排序代价,然后会介绍MySQL实现排序的内部原理,并介绍......
  • Oracle中使用SQL实现日期转换(oracle中的日期转换)
    Oracle中使用SQL实现日期转换(oracle中的日期转换)原文链接:https://www.dbs724.com/260684.htmlOracle中使用SQL实现日期转换在Oracle数据库中,日期转换是一项非常重要的操作,因为不同国家和地区的日期格式不同,而且不同的应用程序需要不同的日期格式。Oracle提供了许多日期转换函......
  • PHPMySQL防注入 如何使用安全的函数保护数据库
    PHPMySQL防注入如何使用安全的函数保护数据库在进行PHP编程开发时,安全性一直是开发人员必须注意的问题,其中最重要的是防止SQL注入攻击。SQL注入攻击是指通过输入恶意代码来攻击数据库的一种方式,攻击者通过输入SQL语句来绕过程序的安全机制,达到控制和操作数据库的目的。为了避免......
  • MySQL随笔【欢迎大家批评指正】
    根据父类id,查找所有子类id:设计初期:记录每条记录的顶级IDMySQL7.5:临时表DELIMITER//CREATEPROCEDUREFindAllChildCategories(INparentCategoryIdINT)BEGINDROPTABLEIFEXISTStemp_categories;CREATETABLEtemp_categories(idINT);INSERTINTOt......