Oracle - zapytanie
Michał Sienkiewicz - 11-12-2005 17:32
Oracle - zapytanie
Witam,
Mam następujący problem: Są dwie tabele: T1 : identyfikator nazwa opis T2: identyfikator nazwa opis
Każda z powyższych tabel może posiadać powtarzające się wiersze, tzn w tabeli T1 mogą znajdować się przykładowo 3 wiersze o id = 1 i nazwie= 'nazwa', to samo odnosi się do tabeli T2. Chciałbym napisać takie zapytanie (Oracle 9i), które połączy mi obie tabele po kolumnach identyfikator i nazwa, ale w taki sposób że dla każdego wiersza z tabeli T1 przyporządkuje maksymalnie jeden wiersz z tabeli T2. Czyli, jeżeli posiadam w tabeli T1 nastepujące dane: identyfikator nazwa 1 AAA 1 AAA 1 AAA 2 BBB 2 CCC 3 DDD natomiast w tabeli T2 następujące dane 1 AAA 2 BBB 2 CCC 3 DDD to powinienem otrzymać następujący wynik: T1.identyfikator T1.nazwa T2.identyfikator T2.nazwa 1 AAA 1 AAA 1 AAA <null> <null> 1 AAA <null> <null> 2 BBB 2 BBB 2 CCC 2 CCC 3 DDD 3 DDD
Czy da się coś takiego zrobić w Oracle 9i?
pozdrawiam, Michał Sienkiewicz
Charuba Arek - 11-12-2005 17:33
Wybacz ale taka budowa tabeli jest niezgodna z zasadami normalizacji. A tak właściwie po co tworzyć tabelę z POWTARZAJĄCYMI SIĘ DANYMI.
=?iso-8859-2?Q?Pawe=B3?= Rozynek - 11-12-2005 17:33
W artykule Charuba Arek napisał(a):
> Wybacz ale taka budowa tabeli jest niezgodna z zasadami normalizacji. > A tak właściwie po co tworzyć tabelę z POWTARZAJĄCYMI SIĘ DANYMI.
Moze ktos juz ja stworzyl, a trzeba to poprawic?
-- Paweł Rozynek http://www.mat.uni.torun.pl/~kombo
Michał Sienkiewicz - 13-12-2005 09:34
> Wybacz ale taka budowa tabeli jest niezgodna z zasadami normalizacji. A > tak właściwie po co tworzyć tabelę z POWTARZAJĄCYMI SIĘ DANYMI. Jedna z tabel jest widokiem zmaterializowanym, który budowany jest na podstawie danych z systemu zewnętrznego (innej bazy danych). Chodzi o dopasowanie danych z dwóch systemów właśnie w podany przeze mnie sposób. Podane przeze mnie nazwy kolumn są tylko przykładowymi, tak naprawdę nie nazywają się id i nazwa (szczególnie to id mogło się wydawać mylące). Każda z tabel ma swoje identyfikatory unikalne, tylko że obie tabele nawzajem nie potrafią się po tych identyfikatorach "porozumiewać", muszę porównywać po innych kolumnach, które niestety nie muszą spowodować jednoznaczego złączenia (a właśnie takie jak podałem w pytaniu).
pozdrawiam, Michał Sienkiewicz
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Oracle 19g +Insert +Insert +Insert...
[Oracle] jak =?ISO-8859-2?Q?ograniczy=E6_pami=EA=E6_dla_se?==?ISO-8859-2?Q?rwera=3F?=
=?ISO-8859-2?Q?=5BOT=5D_Zdany_egzamin_Oracle_1Z0-007_a?==?ISO-8859-2?Q?_brak_informacji_na_stronie_Prometric_-_czy?==?ISO-8859-2?Q?_co=B6_nie_tak=3F?=
[oracle] czy da =?ISO-8859-2?Q?si=EA_z_poziomu_procedury_?==?ISO-8859-2?Q?zrobi=E6_kopi=EA_zapasow=B1=3F?=
[oracle 10g] czy =?ISO-8859-2?Q?mo=BFna_wy=B3=B1czy=E6_wszys?==?ISO-8859-2?Q?tkie_wi=EAzy_w_schemacie=3F?=
MSSQL Express czy Oracle Express
=?iso-8859-2?q?[oracle]_Jak_sprawdzi=E6_wielko=B6=E6_tabeli_=3F=3F?=
=?ISO-8859-2?Q?Poszukjue_ksi=B1=BFki_"Oracle_?= =?ISO-8859-2?Q?optymalizacja_wydajno=B6ci"..?=
Oracle PL/SQL Wstawianie =?ISO-8859-2?Q?wynik=F3w_kolekcji_d?==?ISO-8859-2?Q?o_tabeli?=
=?iso-8859-2?q?[oracle_10g]_jak_da=E6_grant_do_gv$=2E=2E=2E=2E_=3F?=
zanotowane.pldoc.pisz.plpdf.pisz.plponland.htw.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|