2
주문 데이터베이스가 있습니다. 각 주문에는 주문시 여러 SKU가있을 수 있습니다. 마찬가지로 SKU는 여러 주문에 첨부 될 수 있습니다. 각 주문에는 작성된 날짜를 저장하는 날짜 필드가 있습니다. 각 주문의 자세한 내용을 얻을 표와 상호 참조 주문 ID를 나열 날짜 범위가 맞지 않음
- 표 = 정보 테이블
내가 찾으려고하는 것은 특정 날짜 이후에 주문에 첨부되지 않은 SKU입니다. 즉, 지난 30 일 동안 주문되지 않은 SKU 목록이 필요합니다.
그것은 작동하지 않아도되지만 2012 년 7 월 21 일 이후에 주문한 SKU를 계속 반환합니다. 다음은 내가 사용하고있는 쿼리입니다.
SELECT DISTINCT table1.sku, table2.ship_date
FROM table1, table2
WHERE table1.orderID = table2.orderID
AND table2.ship_date NOT BETWEEN DATE ('2012-07-21') and DATE('2012-08-23')
ORDER BY table1.ship_date ASC;
도움이 될 것입니다.
질문에 주어진 표를 사용하면이 방법이 최선입니다. 그러나 쿼리는 지난 30 일 동안 주문되지 않은 주문한 SKU 목록을 제공합니다. 정의에 따라 주문되지 않은 다른 SKU가 지난 30 일 동안 주문되지는 않았지만 주문할 수있는 SKU를 정의하는 테이블에만 표시됩니다. 이는 Table1이나 Table2가 아닙니다. –
@JonathanLeffler 예 - 질문을 자세히 읽지 않았습니다. 나는'table1'이 SKU의 목록이라고 생각했다. 그에 따라 답변을 편집했습니다. – Bohemian