2014-08-30 83 views
0

我有以下查询:sql查询求助select语句

SELECT '-SELECT MONTH' NAME, -1 VALUE 
UNION ALL SELECT 'JANUARY' NAME,1 VALUE 
UNION ALL SELECT 'FEBRUARY' NAME,2 VALUE 
UNION ALL SELECT 'MARCH' NAME,3 VALUE 
UNION ALL SELECT 'APRIL' NAME,4 VALUE 
UNION ALL SELECT 'MAY' NAME,5 VALUE 
UNION ALL SELECT 'JUNE' NAME,6 VALUE 
UNION ALL SELECT 'JULY' NAME,7 VALUE 
UNION ALL SELECT 'AUGUST' NAME,8 VALUE 
UNION ALL SELECT 'SEPTEMBER' NAME,9 VALUE 
UNION ALL SELECT 'OCTOBER' NAME,10 VALUE 
UNION ALL SELECT 'NOVEMBER' NAME,11 VALUE 
UNION ALL SELECT 'DECEMBER' NAME,12 VALUE 

我绑定到一个下拉列表。

我有另一个查询

SELECT MONTH FROM HRMONTHYEARMASTER 
    WHERE LOCKINGSTATUS IS NULL OR LOCKINGSTATUS <> '05' 

这给了我唯一的具体月份。

我的问题是,我想结合这两个查询,并只得到月份的名称和它的值在我的结果集中。 我不知道如何去做。请帮助..

+0

我从第二次查询中得到的月份,我只希望那些在我的结果集中。问题是我从我的第二个查询中只得到int的Month。我的结果集中也需要这个名字。 – 2014-09-01 07:23:08

回答

0
SELECT MONTH VALUE,DATENAME(month, DATEADD(month, MONTH-1, CAST('2008-01-01' AS datetime))) NAME 
FROM HRMONTHYEARMASTER 
WHERE LOCKINGSTATUS IS NULL OR LOCKINGSTATUS <> '05' 

这解决了我的问题。现在我得到名称以及一个月的整数值。

谢谢你们!

0

工会必须有相同的coulmn名称:

SELECT '-SELECT MONTH' NAME, -1 VALUE 
UNION ALL SELECT 'JANUARY' NAME,1 VALUE 
UNION ALL SELECT 'FEBRUARY' NAME,2 VALUE 
UNION ALL SELECT 'MARCH' NAME,3 VALUE 
UNION ALL SELECT 'APRIL' NAME,4 VALUE 
UNION ALL SELECT 'MAY' NAME,5 VALUE 
UNION ALL SELECT 'JUNE' NAME,6 VALUE 
UNION ALL SELECT 'JULY' NAME,7 VALUE 
UNION ALL SELECT 'AUGUST' NAME,8 VALUE 
UNION ALL SELECT 'SEPTEMBER' NAME,9 VALUE 
UNION ALL SELECT 'OCTOBER' NAME,10 VALUE 
UNION ALL SELECT 'NOVEMBER' NAME,11 VALUE 
UNION ALL SELECT 'DECEMBER' NAME,12 VALUE 
UNION ALL 
SELECT MONTH AS NAME, 100 AS VALUE FROM HRMONTHYEARMASTER 
WHERE LOCKINGSTATUS IS NULL OR LOCKINGSTATUS <> '05'