쿼리에서 함수 호출이 있는데이 결과를 두 개의 이름과 함께 반환해야합니다.SQL의 열에 대해 여러 개의 별칭을 부여하려면 어떻게해야합니까?
예 :
SELECT myFunction(column1) as Name1, column2 as Name2 FROM myTable
나는 두 개의 서로 다른 열을 반환하는 myFunction이 결과를 원한다. 열 목록에 다른 함수를 호출하지 않고도이 작업을 수행 할 수 있습니까?
쿼리에서 함수 호출이 있는데이 결과를 두 개의 이름과 함께 반환해야합니다.SQL의 열에 대해 여러 개의 별칭을 부여하려면 어떻게해야합니까?
예 :
SELECT myFunction(column1) as Name1, column2 as Name2 FROM myTable
나는 두 개의 서로 다른 열을 반환하는 myFunction이 결과를 원한다. 열 목록에 다른 함수를 호출하지 않고도이 작업을 수행 할 수 있습니까?
직접 이름을 두 개의 별칭을 제공 할 수는 없지만 파생 쿼리의 열을 반복 할 수 있습니다 :
SELECT name1, name1 AS name2 FROM
(SELECT myFunction(column1) As Name1 From MyTable) base;
또한 단순히 함수 호출을 복제 할 수 있습니다. 함수가 결정적이면 옵티마이 저는 한 번만 호출 할 수 있습니다. (물론 쿼리 계획을 확인하십시오.)
SELECT myFunction(column1) as Name1, myFunction(column1) as Name2 FROM myTable
나는 이것이 무엇을 의미하는지 짐작합니다. 이것은 종종 드롭 다운 목록에 대한 반환 값과 표시 값을 요구하는 프레임 워크에서 사용됩니다. 예를 들어,
select name as DisplayVal, name as ReturnVal from Table
동일한 값을 얻기 위해 두 번의 함수 호출을 수행하지 않습니까? – Jenn
@Jenn, 예. –
@Jenn 함수가 결정적이면 한 번만 호출됩니다. –