는 내가 다른 쿼리의 결과에서 조회 할 뜻 아래T-SQL의 FROM에서 하위 쿼리를 사용할 수 있습니까?
select *
FROM (select *
from TableA
where FieldA = 1
)
where FieldB > 10
처럼 T-SQL을 작성할 수 있습니다.
는 내가 다른 쿼리의 결과에서 조회 할 뜻 아래T-SQL의 FROM에서 하위 쿼리를 사용할 수 있습니까?
select *
FROM (select *
from TableA
where FieldA = 1
)
where FieldB > 10
처럼 T-SQL을 작성할 수 있습니다.
예는
select *
FROM (select * from TableA where FieldA=1) sub
where FieldB > 10
그냥 하위 별칭을 선택주고 기억.
네, 그렇게 할 수 있습니다.
당신은 또한 공통 테이블 식을 사용하여 하위 쿼리를 구분합니다 코드를 읽기 쉽게 만들 수 있도록 (CTE의) :
WITH Foo (FieldA, FieldB, FieldC) AS
(
SELECT FieldA, FieldB, FieldC
FROM TableA
WHERE FieldA=1
)
SELECT *
FROM Foo
WHERE FieldB > 10
단점은 당신이 명시 적으로 열 이름을해야 할 것입니다 . 그러나 이렇게하면 실제로 코드가 빨라지므로 항상 나쁜 것은 아닙니다.
사용하지 않으면 별칭에 별다른 의미가 없습니다.) –
아침 조랑말. 테이블 별칭을 생략하면 쿼리가 컴파일되지 않습니다 ... X-) –
MySQL을 사용 해본 경험이 있습니다. 내일 테스트 해 보겠습니다. –