SQL语句:查询某一年、月、日的记录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL语句:查询某一年、月、日的记录相关的知识,希望对你有一定的参考价值。

参考技术A SQL语句:查询某一年、月、日的记录

$sql="select * from dbname where YEAR(PatchDate)=".$year." and MONTH(PatchDate)=".$month." order by ID desc";

sql求平均值

数据库中有4,5,6三个月,有20人,每个人都有三个月的数据,怎样求出每个人的三个月平均值?

每个人的平均值?那就用group by姓名,按照姓名这个属性来分组统计,用avg函数来求每个人平均值,不过这样算,如果出现同名,会算成一个人,所以一般都是按照学号之类不会重复的列来分组。
大致代码如下:
select 姓名,avg(数学) as 数学平均分,avg(语文) as 语文平均分,avg(政治) as 政治平均分,avg(数学)+avg(语文)+avg(政治) as 总分平均分 from 表名
group by 姓名
参考技术A

三个月总的的平均值吗?


select 姓名,avg(值) as 平均值 from tb
group by 姓名

追问

首先谢谢你,我还是不太懂;
我数据库表中,横排是:月份,姓名,数学,语文,政治,总分
竖排是:4月,5月,6月
我想算出20人的,数学三月的平均值,语文平均值,政治平均值,总分平均值是什么代码?谢谢

追答
看下面,写了两个,看你要哪种:::


--测试表
create table TB2(月份  int,[姓名] nvarchar(20),[数学] int,[语文] int) 
insert into TB2 values(4,'张三1',66,77)
insert into TB2 values(5,'李四',66,88)
insert into TB2 values(6,'李大',66,78)
insert into TB2 values(4,'张三1',66,77)
insert into TB2 values(5,'李四1',66,88)
insert into TB2 values(6,'李大2',66,78)
insert into TB2 values(4,'张三3',66,77)
insert into TB2 values(5,'李四4',66,88)
insert into TB2 values(6,'李大5',66,78)

--查寻1(所有学生3个月的平均值,按月)

select 月份,avg([数学])as 数学,avg([语文]) as 语文

from tb2
group by 月份

--结果:
月份 数学  语文
4 66 77
5 66 88
6 66 78

--查寻2(每个学生3个月的平均值)

select 姓名,avg([数学])as 数学,avg([语文]) as 语文

from tb2
group by 姓名
--结果:

月份 数学  语文
李大 66 78
李大2 66 78
李大5 66 78
李四 66 88
李四1 66 88
李四4 66 88
张三1 66 77
张三3 66 77

以上是关于SQL语句:查询某一年、月、日的记录的主要内容,如果未能解决你的问题,请参考以下文章

SQL语言中按月查询

求一SQL查询语句,查询每天某一时间段记录。

求高手我想取出一年中每个月份的某一字段的数据,SQL语句该怎么写

sql语句去重

SQL语句来判断数据库某一列下是不是有相同值的记录方法

SQL语句如何查询ACCESS数据库中某一字符串字段长度等于某个值的所有记录?