sql查询基本语法_以下select语句语法正确的是
大家好,又见面了,我是你们的朋友全栈君。
数据库是mysql,使用的数据库表名称是my_student.
表的完整数据信息是:
完整语法是:
Select [select选项] 字段列表[字段别名]/* from 数据源 [where 字句] [group by子句 ][having 子句][order by 子句][limit 子句];
①[select选项]:
Select 选项包含:ALL(所有,默认)、distinct(去重)。其中distinct针对的是查询结果的整条记录而言的。
select DISTINCT(sex) from my_student;
select DISTINCT(sex),name from my_student; 和 selectDISTINCT sex,name from my_student;结果是一样的。
②[where 字句]:where是唯一一个从磁盘开始拿数据的时候就开始进行判断的条件,从磁盘取出一条记录,开始进行where判断,判断结果如果成立,那么取出结果保存到内存,否则放弃。
select * from my_student where name = ‘哈哈1’;
③[group by 子句 ]:分组子句,group by子句主要的作用是分组,从而进行统计操作,而不是为了展示(展示的时候,只会展示分组记录的第一条记录),分组时,一般会结合使用count()、max()、min()、avg()、sum()函数。
A、单子段分组:
selectc_id,count(*),max(height),min(height),avg(height),sum(age) from my_studentgroup by c_id ;
sql语句的意思是:my_student表以c_id进行分组,然后显示分组后的每组的c_id名称、每组的总数、每组的最高、最低、平均身高和每组的年龄总和。
B、多字段分组
select c_id,sex,count(*),max(height),min(height),avg(height),sum(age)from my_student group by c_id ,sex;
表示的含义是,对整个表先按照c_id进行分组,然后在此分组的基础之上,然后每组再按照sex,进行分组。
C、多字段分组(加上显示每组的某一字段的所有数据)
selectc_id,sex,count(*),max(height),min(height),avg(height),sum(age) ,GROUP_CONCAT(name)from my_student group by c_id ,sex;
④[having 子句]:having的作用类同where,而且having能做几乎所有where能做的事情,而where却不能做having能做的很多事情,主要是因为
where只能在磁盘提取数据的时候对数据进行操作;而在内存中对数据进行group by分组之后的结果进行处理,只能通过having。
selectc_id,count(*),max(height),min(height),avg(height),sum(age) from my_studentgroup by c_id having COUNT(*) >= 3;
⑤[order by 子句]:对数据进行排序操作,根据某个字段进行升序或者降序排序。(进行多字段排序的时候,先根据某一字段进行潘旭,然后在排序好的内部再按照某字段进行排序)
A、单个字段的排序:
select * from my_student order by c_id;
B、多字段排序
select * from my_student order by c_id,sex;
⑥[limit 子句]:限制结果的数量。Limit 偏移量 记录条数;
A、select * frommy_student limit 2;
B、select * frommy_student limit 0,3;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/196041.html原文链接:https://javaforall.cn
相关文章
- 一条sql查询语句执行过程解析
- SQL查询语句行转列横向显示实例解析
- SQL Server查询结果导出到EXCEL表格的图文教程
- SQL Error (1055) sql_mode=only_full_group_by详解数据库
- WordPress 常用数据库SQL查询语句大全详解编程语言
- MySQL动态SQL:实现动态查询的高效方式。(mysql动态sql)
- MySQL中SQL语句的使用方法(mysql中sql语句)
- MSSQL数据库快速导出SQL文件(mssql导出sql文件)
- MySQL中常用的SQL语句(sql语句mysql)
- MSSQL实现快速导入SQL文件(mssql导入sql文件)
- 脚本编写Oracle SQL脚本编写技巧指南(oracle的sql)
- 语句Oracle精选经典SQL语句集锦(oracle经典sql)
- 轻松实现MySQL SQL批量执行方法,快速操作数据库(mysql批量执行sql)
- 语句深入Linux:如何执行SQL语句?(linux怎么执行sql)
- 解读Oracle查询计划:优化SQL语句的必备技能(oracle解释计划)
- 询SQL Server查询速度慢,如何解决?(sqlserver慢查)
- MySQL SQL监控:保障数据库运行稳定的必备措施(mysql sql 监控)
- 深入浅出MySQL主键SQL,轻松学会数据库设计(mysql主键sql)
- sql学习使用LR分析Oracle SQL语句的完美指南(lr 写oracle)
- 如何在MySQL中运行SQL查询(mysql上运行sql)
- Oracle也用SQL有没有别的区别(oracle也是sql吗)
- SQL高级应用之使用SQL查询Excel表格数据的方法
- sql查询本年、本月、本日记录的语句,附SQL日期函数
- sqlserver中查询横表变竖表的sql语句简析
- 在SQLServer中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
- mysql查询指定日期时间内sql语句实现原理与代码