-2
我需要编写一个查询,返回一个月的天数。 请理解我无法使用DATE,并且任何具有DATE的查询都无法使用。一个月的总天数
我已经创建了一个int值的参数。在1月为1,二月是2等
从值1或2,我希望得到的天数一样的1天数应为31和2应该是28或29
我正在使用Ms sql-server-2008。
帮助是必需的。
Regards,
我需要编写一个查询,返回一个月的天数。 请理解我无法使用DATE,并且任何具有DATE的查询都无法使用。一个月的总天数
我已经创建了一个int值的参数。在1月为1,二月是2等
从值1或2,我希望得到的天数一样的1天数应为31和2应该是28或29
我正在使用Ms sql-server-2008。
帮助是必需的。
Regards,
因此,您始终可以使用日期部件建立日期。您可能想要验证输入并将此逻辑转换为您的需要。
DECLARE @year SMALLINT = 2017;
DECLARE @month TINYINT = 2;
DECLARE @dateFrom DATE = CONVERT(DATE,
CONVERT(CHAR(4), @year) + '-'
+ RIGHT('00' + CONVERT(VARCHAR(2), @month), 2)
+ '-01'
);
DECLARE @dateTo DATE = DATEADD(MONTH, 1, @dateFrom);
SELECT DATEDIFF(DAY, @dateFrom, @dateTo);
- 或 -
如果你真的热衷于不使用任何计算,只是一个查询,表中的这些值存储和使用的输入值查询该表。
非常感谢Pred。该服务器的目的。你节省了我很多时间。 – JamshaidRiaz
看看这个链接:https://stackoverflow.com/questions/691022/how-to-determine-the-number-of-days-in-a-month-in-sql-server –
可能重复的[如何确定一个月在SQL Server中的天数?](https://stackoverflow.com/questions/691022/how-to-determine-the-number-of-days-in-a-month-in- sql-server) – deblocker
看起来我们找到了同样的东西! –