Problem z wydobyciem danych z tabeli

Użytkowanie programu bazodanowego
kristoferson
Posty: 13
Rejestracja: śr lut 06, 2013 9:09 pm

Problem z wydobyciem danych z tabeli

Post autor: kristoferson »

Witam,

Mam taki problem,
od niedawna zacząłem uczyć się Base (Libre office)
i nie mogę sobie poradzić z takim problem
Mam tabelę
LP | P1 | P2 | P3 |
1 A B C
2 C A B
3 D E F
4 F D E
itd
ale są też:
5 G H I

czyli takie w P1 dane G które nie występują w P2 i(lub) w P3
i takie właśnie chciałbym wydobyć z p1 wraz z przypisanymi im danymi z P2 i z P3
od tygodnia czytam wszystko o SQL, przeglądam przykłady i nie udało mi się.
Być może tego problemu nie można rozwiązać w base. Dodam, że tabela jest duża - około 40 000 wierszy.
Proszę o jakąś poradę.

Pozdrawiam
Krzysiek
OpenOffice 3.1 na Windows XP
Jan_J
Posty: 4626
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Problem z wydobyciem danych z tabeli

Post autor: Jan_J »

kristoferson pisze:Mam tabelę
LP | P1 | P2 | P3 |
1 A B C
2 C A B
3 D E F
4 F D E
itd
ale są też:
5 G H I

czyli takie w P1 dane G które nie występują w P2 i(lub) w P3
i takie właśnie chciałbym wydobyć z p1 wraz z przypisanymi im danymi z P2 i z P3.
Jako że odpytujemy całą kolumnę (albo sumę kilku kolumn) na okoliczność (nie)zawierania danej z pewnego pola bieżącej krotki, użyłbym tzw. podzapytania nieskorelowanego:

Kod: Zaznacz cały

select P1, P2, P3 from Tabela 
where P1 not in (select P2 from Tabela) and P1 not in (select P3 from Tabela)
ew.

Kod: Zaznacz cały

select P1, P2, P3 from Tabela 
where P1 not in ((select P2 from Tabela) union (select P3 from Tabela))
JJ
LO (25.2|24.8) ∙ Python (3.12|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
kristoferson
Posty: 13
Rejestracja: śr lut 06, 2013 9:09 pm

Re: Problem z wydobyciem danych z tabeli

Post autor: kristoferson »

Wielkie dzięki,

Działa rewelacyjnie.

Pozdrawiam
Krzysiek
OpenOffice 3.1 na Windows XP
ODPOWIEDZ