2014-09-01 2 views
1

나는 이것을 달성하는 방법에 대해 많은 사람들이 쓰고있는 & 스레드를 읽었지만 아무 것도 정말로 도움이되지 못한다.DATENAME을 (를) 열 이름으로 사용 하시겠습니까?

IE는 :

How do I name a column as a date value

current month as column name

todays date as a column name to a simple select statement.

난 당신에게 내가 읽고 스레드를 보여주는 갈 수

하지만 아무도 무엇을 대답하는 것 I 필요.

기본적으로 제가 SQL에서 할 시도하고 이것이다 :

SELECT 
    Blahblah AS DATENAME(MONTH, GETDATE()) --AS "September" 

또는

DECLARE 
    @CM VARCHAR(50) 

SET 
    @CM = DATENAME(MONTH,GETDATE()) 

SELECT 
    Blahblah AS @CM --AS "September" 

내가 그 일의 아무도하지만 당신이 무엇을 내가 보여 없다는 것을 알고 있어요 할려고합니다. 누구든지 이것을 이룰 수 있었습니까?

내가 읽었을지도 모를 쓰레드가이 일을하는 데 도움이 되었습니까?

많은 감사,

마이크

+0

피벗 테이블을 사용하고 예제 테이블도 보여줍니다 – sumit

+0

흠, 그렇게 간단하지 않습니까? 나는 단지이 생각을 포기할지도 모른다 : (haha – Mike

+0

미안 .. 나는 생각했다 .. 그 단순한 .. 대답을 확인하십시오 – sumit

답변

0

당신은 어쩌면이 같은 동적 SQL을 사용할 수있는이

DECLARE 
@CM VARCHAR(50), 
@sql varchar(max) 
SET @CM = DATENAME(MONTH,GETDATE()) 

SET @sql ='SELECT 
''Blahblah'' as '+ @CM 
exec(@sql)  
2

시도 :

create table t (val int) 
insert t values (100) 

declare @month varchar(20) = datename(month, getdate()) 

declare @sql varchar(max) 
set @sql = 'select val as ' + @month + ' from t' 
exec (@sql) 

결과 :

September 
----------- 
100 
관련 문제