① sql查询不同区间的数量
select
count(case when time>=1 and time <=2 then muid end),
count(case when time>=2.1 and time <=3 then muid end),
count(case when time>=3.1 and time <=4 then muid end)
from table
② 关于SQL中count的用法
用sum更好点,如
(一)
select
a.单位名称,sum(case
when
b.时间>='2007-04-01'
and
b.时间<'2007-07-01'
then
1
else
0
end)
as
[2007二季度],sum(case
when
b.时间>='2007-10-01'
and
b.时间<'2008-01-01'
then
1
else
0
end)
as
[2007四季度]
from
表一
a
left
join
表二
b
on
a.单位名称=b.单位名称
group
by
a.单位名称
(二)
select
a.单位名称,sum(case
when
b.时间>='2007-04-01'
and
b.时间<'2007-07-01'
and
b.类别='e'
then
1
else
0
end)
as
[2007二季度],sum(case
when
b.时间>='2007-10-01'
and
b.时间<'2008-01-01'
and
b.类别='e'
then
1
else
0
end)
as
[2007四季度]
from
表一
a
left
join
表二
b
on
a.单位名称=b.单位名称
group
by
a.单位名称
③ 如何用一条sql语句查询出不同年份的总量,求解!!!
没看出来什么数据库
selectyear(publish_time),count(*)from表名groupbyyear(publish_time)
你先看这样报错不
④ sql中按不同字段统计数量的查询语句,要求在一个时间段中
//thinkphp5.1查询7天内每天的金额总数
$dates=[];
for($i=7;$i>=0;$i--){//近7天日期
$dates[]=date('Y-m-d',strtotime('-'.$i.'days'));
}
$where="whereunix_timestamp(time)>=unix_timestamp('".$dates[0]."')";
$order="groupbydate_format(time,'%Y-%m-%d')";
$select="selectdate_format(time,'%Y-%m-%d')astime,sum(money)ascountfromczjl";
$sql=$select.$where.$order;
$orderList=Db::query($sql);
mp($orderList);
数据库
你可以参考下