2014-05-22 1 views
1

다음과 같은 쿼리가 있습니다.쿼리 결과를 별도의 쿼리에 대한 열로 어떻게 사용할 수 있습니까?

SELECT 'U_' + (LEFT(DATENAME(dw, GETDATE()), 3)) + 'Confirm' 

이것은 그때 내가 쿼리하려고 테이블의 해당 필드와 다른 쿼리에서 컬럼으로 그 결과를 사용할 필요가 U_ThuConfirm

, 예를 들어, 결과를 제공합니다. 아래;

SELECT ('U_' + (LEFT(DATENAME(dw, GETDATE()), 3)) + 'Confirm') FROM MyTable 

나는 변수를 사용했지만 실제로는 그 열을 검사하지 않고 결과 만 표시합니다.

+0

이 SQL Server 또는 MySQL입니까? 당신은 그것을 둘 다 태그로했습니다. – DaImTo

+1

구문은 분명히 SQL Server이므로 mysql 태그를 제거했습니다. –

+0

당신의 쿼리는 당신이 찾고있는 값을 가진'MyTable'의 각 행에 대해 하나의 컬럼을 리턴해야합니다 ("U_ThuConfirm"). 원하는 내용이 아닌 경우 질문을 편집하고 원하는 결과를 표시하십시오. –

답변

1

당신은 당신의 쿼리에 포함 된 문자열을 작성해야합니다 이런 식으로 뭔가를 들어이

EXEC (@SQL) 
+0

감사합니다. Brendan, 정말 고마워요. – BMaingi

0

처럼 실행 그리고

DECLARE @SQL VARCHAR(500) 
SET @SQL = 'SELECT U_' + (LEFT(DATENAME(dw, GETDATE()), 3)) + 'Confirm FROM MyTable' 

을 - 선택은 당신이를 사용할 수있는 잘 정의되어있다 case 문

SELECT CASE 
     WHEN DATEPART(dw, GetDate()) = 1 THEN U_SunConfirm 
     WHEN DATEPART(dw, GetDate()) = 2 THEN U_MonConfirm 
     WHEN DATEPART(dw, GetDate()) = 3 THEN U_TueConfirm 
     WHEN DATEPART(dw, GetDate()) = 4 THEN U_WedConfirm 
     ... etc 
     END 
     AS Confirms 
관련 문제