SQL Server 2012를 사용하고 하위 쿼리의 이름으로 다음 쿼리의 결과를 정렬하려고하지만 항상 SQL 실행 오류가 발생합니다.SQL Server : 중첩 방식으로 정렬하는 방법
누군가 내가 여기서 잘못하거나 잘못하고있는 것을 말해 줄 수 있습니까?
내 쿼리 :이 어떤 도움, 팀에 미리
SELECT A.EmpID,
(SELECT B.EmpID, B.LastName + ', ' + B.FirstName AS TM
FROM dbo.EmpTable AS B
WHERE B.SupEmpID = A.EmpID)
FROM dbo.EmpTable AS A
WHERE A.NTID = 'someID'
ORDER BY B.LastName + ', ' + B.FirstName
많은 감사합니다.
두 이름 중 하나에 쉼표가 없다고 가정하면 연결을 수행하지 않음으로써 색인이 사용될 확률을 높일 수 있습니다. 조인/그룹화/정렬 (원본 또는 연결 또는 캐스팅과 같은 암시 적으로조차도)을 위해 원본 열에서 함수를 호출하면 데이터베이스에서 해당 인덱스의 일부를 수행하기 위해 인덱스를 사용할 수 없도록 만듭니다. 질의, 속도를 줄이십시오. (글쎄, 옵티마이 저가 때때로 해결할 수 있지만, 관찰하는 것이 좋은 첫 번째 규칙입니다). –