2010-07-01 3 views

답변

11

직접 이름을 두 개의 별칭을 제공 할 수는 없지만 파생 쿼리의 열을 반복 할 수 있습니다 :

SELECT name1, name1 AS name2 FROM 
    (SELECT myFunction(column1) As Name1 From MyTable) base; 

또한 단순히 함수 호출을 복제 할 수 있습니다. 함수가 결정적이면 옵티마이 저는 한 번만 호출 할 수 있습니다. (물론 쿼리 계획을 확인하십시오.)

1
SELECT myFunction(column1) as Name1, myFunction(column1) as Name2 FROM myTable 

나는 이것이 무엇을 의미하는지 짐작합니다. 이것은 종종 드롭 다운 목록에 대한 반환 값과 표시 값을 요구하는 프레임 워크에서 사용됩니다. 예를 들어,

select name as DisplayVal, name as ReturnVal from Table 
+1

동일한 값을 얻기 위해 두 번의 함수 호출을 수행하지 않습니까? – Jenn

+0

@Jenn, 예. –

+0

@Jenn 함수가 결정적이면 한 번만 호출됩니다. –

관련 문제