我试图在SQL中选择一个纳税括号。
我可以简单地制作一个minbracket和maxbracket feild,但这将是重复的数据。
目前,我有:
RedisDictionary
哪个适用于300,000,但是当我达到NY的最高税率时,因为我正在寻找s2.statetaxid"在"下,但不是说1,000,000。
SELECT s1.statetaxid, s1.statecode, s1.type, s1.taxrate, s1.bracket, s1.exemptperfiler, s1.exemperdependent, s1.deductfederaltaxonstate
FROM
statetax s1
INNER JOIN statetax s2
ON s1.statetaxid = s2.statetaxid - 1
WHERE
s1.statecode = 'NY' AND
s1.type = 'Single' AND
s1.bracket <= 300000 AND
s2.bracket > 300000
如何包括工资高于最高门槛的情况?
答案 0 :(得分:0)
假设您从0开始,您希望找到MAX括号小于您的薪水的行:
SELECT s1.statetaxid, s1.statecode, s1.type, s1.taxrate, s1.bracket, s1.exemptperfiler, s1.exemperdependent, s1.deductfederaltaxonstate
FROM
statetax s1
WHERE
s1.statecode = 'NY' AND
s1.type = 'Single' AND
s1.bracket = (
select max(s2.bracket)
FROM
statetax s2
WHERE
s1.statecode = s2.statcode AND
s1.type = s2.type AND
s2.bracket < 300000 -- salary?
)