gurbelunder
SQL-Guru
- Beiträge
- 136
Moin Leute,
heute stehe ich mal auf dem Schlauch:
Ich habe zwei Tabellen:
[CODE
DOCUMENT
------------------------
ID, Name, Dateigröße
DOCUMENTCUSTOMFIELDVALUE
-------------------------------------------------
ID(aus der DOCUMENT), Name, Typ, ...
[/CODE]
Ich möchte nun prüfen, welche ID's in der DOCUMENTCUSTOMFIELDVALUE auftauchen, die nicht in der DOCUMENT stehen. Also habe ich zwei verschiedene Abfragen, die doch eigentlich dasselbe Ergebnis bringen sollten?
Nummer 1 mit MINUS:
Nummer 2 mit JOIN (diese braucht auf jedenfall länger):
Ich habe absichtlich das Zählen drum herum gebunden, weil eigentlich bei beiden Abfragen das gleiche raus kommen sollte, oder?
Danke euch und Grüße,
David
heute stehe ich mal auf dem Schlauch:
Ich habe zwei Tabellen:
[CODE
DOCUMENT
------------------------
ID, Name, Dateigröße
DOCUMENTCUSTOMFIELDVALUE
-------------------------------------------------
ID(aus der DOCUMENT), Name, Typ, ...
[/CODE]
Ich möchte nun prüfen, welche ID's in der DOCUMENTCUSTOMFIELDVALUE auftauchen, die nicht in der DOCUMENT stehen. Also habe ich zwei verschiedene Abfragen, die doch eigentlich dasselbe Ergebnis bringen sollten?
Nummer 1 mit MINUS:
Code:
select count(*) from
(
select a.ID from DOCUMENTCUSTOMFIELDVALUE a
MINUS
select b.ID from DOCUMENT b
);
Nummer 2 mit JOIN (diese braucht auf jedenfall länger):
Code:
select count(*) from
(
select a.ID from DOCUMENTCUSTOMFIELDVALUE a, DOCUMENT b where a.ID NOT LIKE b.ID
);
Ich habe absichtlich das Zählen drum herum gebunden, weil eigentlich bei beiden Abfragen das gleiche raus kommen sollte, oder?
Danke euch und Grüße,
David