如何根据财务年度获取记录 [英] How to get records based on finanical year
本文介绍了如何根据财务年度获取记录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好
我有一个表,其列如下所示
名称
月->比赛中说3
年->节省一年
现在,我需要一个查询来获取2010年4月至2011年3月之间的记录.如果我们将2010年作为输入内容..
您可以提供存储过程或查询吗?
Hi All
I have a table having column like below
name
month-> It says 3 for match
year-> It saves year
Now I need a query to get records between April 2010 to March 2011. If we pass 2010 as input..
Can you please provide stored procedure or query?
推荐答案
尝试一下
CREATE PROCEDURE myProc
@monthStart INT,
@yearStart INT,
@monthEnd INT,
@yearEnd INT
AS
BEGIN
-- check params
IF (@yearStart > @yearEnd) OR (@yearStart = @yearEnd AND @monthStart > @monthEnd)
BEGIN
RAISERROR(''Invalid Parameters'',16,1)
RETURN 1
END
SELECT *
FROM MyTable
WHERE [year] BETWEEN @yearStart AND @yearEnd
AND
CASE
WHEN [year] = @yearStart AND [month] < @monthStart THEN 0
WHEN [year] = @yearEnd AND [month] > @monthEnd THEN 0
ELSE 1
END = 1
RETURN 0
END
GO
请参见此处 [ ^ ].可能对您有帮助.
See here[^]. It may help you.
检查SQLUNION
Check the SQLUNION
SELECT [column name]
FROM [table name]
WHERE month > 3
AND year = 2010
UNION
SELECT [column name]
FROM [table name]
WHERE month < 4
AND year = 2011
这篇关于如何根据财务年度获取记录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文