SQL怎么取最新的一个季度数据

SQL怎么取最新的一个季度数据,第1张

您好!这是我写的SQL。因为没有看到这个表的表名,所以我就用TEMPTABLE作为表名来写的,你在使用时直接将其替换为这个表的实际表名,再执行一下,看看是否能满足要求。

您好!因为这个平台可能有审查,我直接将SQL贴在这里无法发布。要么麻烦您私信联系我一下。我把SQL发给您。或者就是麻烦您按照上面的截图自己手动打出来验证一下。

这个需要取么,都是定死的,每年都一样

第一季度:1月1号,3月31号

第二季度:4月1号,6月30号

第三季度:7月1号,9月30号

第四季度:10月1号,12月31号

和闰年也没关系,不需要编程计算,最多定义常量来保存

你好,以下是获取年,季度,天日期的所有方式:

DECLARE @dt datetime

SET @dt=GETDATE()

DECLARE @number int

SET @number=3

--1.指定日期该年的第一天或最后一天

--A 年的第一天

SELECT CONVERT(char(5),@dt,120)+'1-1'

--B 年的最后一天

SELECT CONVERT(char(5),@dt,120)+'12-31'

--2.指定日期所在季度的第一天或最后一天

--A 季度的第一天

SELECT CONVERT(datetime,

CONVERT(char(8),

DATEADD(Month,

DATEPART(Quarter,@dt)3-Month(@dt)-2,

@dt),

120)+'1')

--B 季度的最后一天(CASE判断法)

SELECT CONVERT(datetime,

CONVERT(char(8),

DATEADD(Month,

DATEPART(Quarter,@dt)3-Month(@dt),

@dt),

120)

+CASE WHEN DATEPART(Quarter,@dt) in(1,4)

THEN '31'ELSE '30' END)

--C 季度的最后一天(直接推算法)

SELECT DATEADD(Day,-1,

CONVERT(char(8),

DATEADD(Month,

1+DATEPART(Quarter,@dt)3-Month(@dt),

@dt),

120)+'1')

--3.指定日期所在月份的第一天或最后一天

--A 月的第一天

SELECT CONVERT(datetime,CONVERT(char(8),@dt,120)+'1')

--B 月的最后一天

SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+'1')

--C 月的最后一天(容易使用的错误方法)

SELECT DATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))

--4.指定日期所在周的任意一天

SELECT DATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)

--5.指定日期所在周的任意星期几

--A 星期天做为一周的第1天

SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)

--B 星期一做为一周的第1天

SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)

<php

//第一天

function GetInceDay()

{

$month = date("m");

if ($month >=1 && $month < 4)

{

return "1月1日";

}

else if ($month >= 4 && $month < 7)

{

return "4月1日";

}

else if ($month >= 7 && $month < 10)

{

return "7月1日";

}

else

{

return "10月1日";

}

return "";

}

//最后一天

function GetEndDay()

{

$month = date("m");

if ($month >= 1 && $month < 4)

{

return "3月31日";

}

else if ($month >= 4 && $month < 7)

{

return "6月30日";

}

else if ($month >= 7 && $month < 10)

{

return "9月30日";

}

else

{

return "12月31日";

}

return "";

}

>

<php echo "本季度第一天:"GetInceDay()"<br>";>

<php echo "本季度最后一天:"GetEndDay()"<br>";>

你的意思是给一个时间跨度好比

2010/3/2-2015/05/06

然后输出 2010 2011 2012 2013 2014 2015 其他类似,是这个意思吗?

String format=new Format("yyyy"),format(new Data());

这样可以获得数字类型的年

Integer int =IntegerparsreInteger(format);

这样可以获得整形的年

之后就是进行循环读取即可。

设A1为你的日期如A1为2010-8-17,在B1输入如下公式:

=A1-DATE(YEAR(A1),1,0)

说明:如要显示为229,则要重新把B1的格式设为常规即可

以上就是关于SQL怎么取最新的一个季度数据全部的内容,包括:SQL怎么取最新的一个季度数据、用java怎么取某年某个季度的开始日期与结束日期、SQL如何获得本季度第一天,一年的第一天,本月的最后一天等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9439971.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存