0
私は2つのテーブルを持っています(1つは 'salesimports'に関するデータ、次にショップに関するデータ)。oraclesql - 不足しているsalesimportデータを検索します
これは、例えばデータである:私は両方のテーブルからデータを取るために使用
shop city importid importtype importtime committime endtime
S410 KURSK 1107597374 PSCN 2016-06-17 2016-06-17 2016-06-17
S004 KIEV 1107595750 PSCN 2016-06-17 2016-06-17 2016-06-17
S230 WARSAW 1107595594 PSCN 2016-06-17 2016-06-17 2016-06-17
S115 LVIV 1107595507 PSCN 2016-06-17 2016-06-17 2016-06-17
S220 PRAGUE 1107595458 PSCN 2016-06-17 2016-06-17 2016-06-17
S179 MINSK 1107595328 PSCN 2016-06-17 2016-06-17 2016-06-17
S247 HOMEL 1107595264 PSCN 2016-06-17 2016-06-17 2016-06-17
S202 ROSTOV 1107595114 PSCN 2016-06-17 2016-06-17 2016-06-17
S132 BERLIN 1107595112 PSCN 2016-06-17 2016-06-17 2016-06-17
選択:
select f.shid shop, f.ctid city, i.limportref importid, i.simporttype importtype,
centrala_user.borlanddatetostr(i.itp) importtime,
centrala_user.borlanddatetostr(i.gtp) committtime,
centrala_user.borlanddatetostr(i.edp) endtime
from oracla.imports i
join oracla.firm f on i.shid = f.shid
where f.byact = 0
and f.bytype = 0
and i.simporttype not in ('PSXN')
order by i.itp desc;
私の計画は私のお店についての情報を与えること、選択を取得することです店頭の「salesdata」全体がsalesimportsテーブルにありません。
私は 'and not in'と 'and not exist'を使っていくつかの解決策を試しましたが、私が望む結果が得られませんでした。
アイデア?
はありがとうを、これは私はほとんど何を望むかです。 悲しいことですが、私は似たような方法を使っていましたが、f.shidをfの検索ではなく、fの代わりに検索しました。多分疲れていて、コーヒーが出ていたのかもしれません。 最後のimportdateを表示する方法を見つけなければならないということです。 – headder
これは、単一のインポートがないショップのリストです。 しかし、最後の '月間'に輸入品がない店舗を見て、最後にメインサーバーにインポートした日時を表示する方法を知りました。 – headder
@headder前月の月が1ヶ月前の場合は、add_months(sysdate、-1)を使用できます。最後の日付はインライン選択を使用します。私はSQLを変更しました。 – Mottor