차선 당 1 달러의 운송 차선 목록이 제공됩니다. 문제는 때때로 간접 루트가 직접 루트보다 저렴하다는 것입니다. 그 인스턴스를 찾아서 새 테이블에 삽입 할 수 있기를 원합니다. LEFT OUTER JOIN을 사용해 보았지만 그 사실을 이해할 수는 없습니다. 아래는 내가 찾고있는 코드와 내가 시도한 코드의 예제이다. 나는 그것이 어떤 데이터베이스인지 모르겠습니다.SQL : 테이블 자체에 가입하십시오.
(편집) 예 : 0380 to loc. 1428 (직통)은 $ 100.00이지만 0380 - 1732 사이의 비용과 1428 (간접적 인) 비용은 $ 99.61입니다.
조직 | 목적지 | 금액
0380 | 1428 | $ 100.00
0380 | 1732 | $ 92.26
1732 | 1428 | $ 7.35
INSERT INTO dbo.NewTable
SELECT T1.Org, T1.Dest, T1.Amount, T2.Org, T2.Dest, T2.Amount, T3.Org, T3.Dest, T3.Amount
FROM ((dbo.RateTable [T1]
LEFT OUTER JOIN dbo.RateTable [T2]
ON T1.Org = T2.Org)
LEFT OUTER JOIN dbo.RateTable [T3]
ON T1.Dest = T3.Dest AND T2.Dest = T3.Dest)
WHERE T1.Amount > (T2.Amount + T3.Amount);
어떤 데이터베이스를 사용하고 있습니까? 열 편집을 통해 샘플 데이터를 제공 할 수 있습니까? (이 정보로 질문을 편집하십시오.) –
고든이 말한 것에서 두 번째. 우리는 더 많은 정보가 필요합니다 –
@BJW. . . 나는이 도약을하고이 SQL 서버에 태그를 붙일 것이다. 구문은 기본적으로 SQL Server (또는 Sybase)입니다. 나는 그것이 Access가 아니라 Access가 "outer outer join"에서 "outer"를 지원하지 않길 바랬다. –