共计 1858 个字符,预计需要花费 5 分钟才能阅读完成。
这篇文章将为大家详细讲解有关 sql 数据库查询语句怎么实现,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
sql 数据库查询语句的完整语法是“Select [select 选项] 字段列表 [字段别名]/* from 数据源 [where 字句] [group by 子句][having 子句][order by 子句][limit 子句];”。
本教程操作环境:windows7 系统、mysql8 版、Dell G3 电脑。
数据库是 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(*)
⑤[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;
关于“sql 数据库查询语句怎么实现”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。