-4
연락처가 createddate가 다른 테이블에서 지난 6 개월 동안 사용되지 않은 경우 "연락처"테이블이 있습니다 연락처를 제거해야합니다. 누구든지이 문제를 해결할 수 있습니까?오라클 : 날짜 확인은 지난 6 개월 동안 사용되었습니다.
연락처가 createddate가 다른 테이블에서 지난 6 개월 동안 사용되지 않은 경우 "연락처"테이블이 있습니다 연락처를 제거해야합니다. 누구든지이 문제를 해결할 수 있습니까?오라클 : 날짜 확인은 지난 6 개월 동안 사용되었습니다.
당신이
select c.contact_id
from contact c
where not exists(select 1
from orders o
where o.contact_id = c.contact_id
and o.order_date > add_months(sysdate,-6))
이 행 말했다되고 그건
delete from contact c
where not exists(select 1
from orders o
where o.contact_id = c.contact_id
and o.order_date > add_months(sysdate,-6))
를 삭제하려면 지난 6 개월에 주문을했다하지 않은 연락처를 확인하려는 경우, 당신이 거라고 아닌 것 같습니다 이것을 원한다. 합리적인 데이터 모델이있는 경우 연락처를 삭제하면 6 개월이 넘은 주문을 삭제해야한다는 것을 의미합니다. 이는 잘못된 생각처럼 보입니다. 아마도 active_flag
을 'N'으로 설정하는 것이 더 합리적 일 것입니다.
질문이 있습니다. 하지만 네가 무엇을 요구하는지 모르겠다. 일정 기간 동안 다른 테이블에서 날짜를 사용한다는 것은 무슨 뜻입니까? 재현 가능한 테스트 케이스 (ddl, dml, 예상 결과)가 도움이 될 것입니다. –
여기에서 [ask]에 대한 몇 가지 제안 사항과 [Mcve] – Aleksej
@JustinCave 2 테이블 (CONTACT 및 ORDERS)을 작성하는 방법에 대해 설명합니다. 연락처가 오늘 생성되고 contactId가 ORDERS 테이블의 모든 주문에 사용되는 경우 np를 의미합니다. 지난 6 개월 동안 주문에 대한 연락처 ID를 사용하지 않으면 연락처 테이블의 항목을 삭제해야합니다. –