2012-04-30 5 views
0

4 개의 테이블을 결합하여 결과를 원합니다. 이전에는 4 개의 다른 쿼리를 사용하고 성능을 향상시키기 위해 테이블을 조인하고 단일 테이블에서 쿼리를 시작했습니다. 그러나 성과는 개선되지 않았습니다.SQLite3 데이터베이스 쿼리 최적화

나중에 SQLite가 join 문을 "where 절"으로 변환하고 일부 CPU 시간을 절약하는 조인 대신 "Where"절을 직접 사용할 수 있음을 알았습니다.

하지만 "Where"절의 문제점 중 하나가 4 가지 조건 중 하나라도 실패하면 결과 집합이 null입니다. 하나의 조건이 실패 할 경우 다른 조건과 일치하는 나머지 열이 채워진 표를 채우고 빈 표가 아닌 표를 원합니다. 이것을 달성 할 수있는 방법이 있습니까? 감사!

+0

SQL 문과 4 개의 테이블 스키마를 게시 할 수 있습니까? –

답변

0

LEFT OUTER JOIN을 사용 해본 적이 있습니까? 이 예에서는 예

SELECT Customers.AcctNumber, Customers.Custname, catalogsales.InvoiceNo 
FROM Customers 
LEFT OUTER JOIN catalogsales ON Customers.Acctnumber = catalogsales.AcctNumber 

위한

"catalogsales"이라면, 아직이 경우 "고객"인 "왼쪽"테이블에서 데이터를 반환에 일치하는 행이없는 경우

예제 SQL을 사용하지 않으면 시도한 것을 알기가 어렵습니다.