=?ISO-8859-2?Q?=5BOracle=5D_Porownanie_wierszy_z_tych_?==?ISO-8859-2?Q?samych_tablic_na_2_r=F3=BFnych_schematach?=
jerry - 17-06-2007 00:20
=?ISO-8859-2?Q?=5BOracle=5D_Porownanie_wierszy_z_tych_?==?ISO-8859-2?Q?samych_tablic_na_2_r=F3=BFnych_schematach?=
Witam, Poszukuj? najbardziej optymalnego rozwiazania ponizszego problemu: Sa zainstalowane 2 srodowiska: testowe i produkcyjne - sa to 2 schematy. Jak najszybciej znalezc te wiersze danej tabeli, ktore na obu srodowiskach maja ten sam ID ale roznia sie jakas wartoscia w innych kolumnach. Np:
Tabela link@Tabela ID | Kol1 | Kol2 ID | Kol1 | Kol2 ----------------- ---------------- 1 A A 1 A B 2 A A 2 A A --> tylko ten jest identyczny 3 B A 3 C B 4 B B 4 A B
Czyli interesuje mnie dostac w wyniku wszystkie wiersze oprócz ID=2 - bo ten wiersz jest taki sam w obu tabelach.
=?ISO-8859-2?Q?Micha=B3?= Kuratczyk - 17-06-2007 00:20
jerry wrote: > Poszukuj? najbardziej optymalnego rozwiazania ponizszego problemu: > Sa zainstalowane 2 srodowiska: testowe i produkcyjne - sa to 2 schematy. > Jak najszybciej znalezc te wiersze danej tabeli, ktore na obu > srodowiskach maja ten sam ID ale roznia sie jakas wartoscia w innych > kolumnach. Np: > > Tabela link@Tabela > ID | Kol1 | Kol2 ID | Kol1 | Kol2 > ----------------- ---------------- > 1 A A 1 A B > 2 A A 2 A A --> tylko ten jest identyczny > 3 B A 3 C B > 4 B B 4 A B > > Czyli interesuje mnie dostac w wyniku wszystkie wiersze oprócz ID=2 - bo > ten wiersz jest taki sam w obu tabelach.
Co? w tym stylu?
select * from ( select * from tab1 minus select * from tab2 union all (select * from tab2 minus select * from tab1) ) order by id;
-- Micha? Kuratczyk
jerry - 17-06-2007 00:20
=?ISO-8859-2?Q?Re=3A_=5BOracle=5D_Porownanie_wierszy_z_?==?IS O-8859-2?Q?tych_samych_tablic_na_2_r=F3=BFnych_schematac? ==?ISO-8859-2?Q?h?= > Co? w tym stylu? > > select * from ( > select * from tab1 minus select * from tab2 > union all > (select * from tab2 minus select * from tab1) > ) order by id; >
Dzieki, ale wydaje mi sie (nie mam teraz jak sprawdzic), ze to pytanie zwroci takze te wiersze, ktore roznia sie ID. Mi zalezy na tym aby pokazac tylko zestaw danych, ktore w obu tabelach maja to samo ID ale dowolnie roznia sie w pozostalych polach.
=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 17-06-2007 00:20
=?ISO-8859-2?Q?Re=3A_=5BOracle=5D_Porownanie_wierszy_z_?==?IS O-8859-2?Q?tych_samych_tablic_na_2_r=F3=BFnych_schematac? ==?ISO-8859-2?Q?h?=
jerry wrote: > >> Co? w tym stylu? >> >> select * from ( >> select * from tab1 minus select * from tab2 >> union all >> (select * from tab2 minus select * from tab1) >> ) order by id; >> > > Dzieki, ale wydaje mi sie (nie mam teraz jak sprawdzic), ze to pytanie > zwroci takze te wiersze, ktore roznia sie ID. > Mi zalezy na tym aby pokazac tylko zestaw danych, ktore w obu tabelach > maja to samo ID ale dowolnie roznia sie w pozostalych polach.
No to zrób jeszcze joina po id w subselektach z przeciwn? tabel?.
-- P.M.
Marcin 'goral' Goralski - 19-06-2007 00:05
=?ISO-8859-2?Q?Re=3A_=5BOracle=5D_Porownanie_wierszy_z_?==?IS O-8859-2?Q?tych_samych_tablic_na_2_r=F3=BFnych_schematac? ==?ISO-8859-2?Q?h?=
jerry wrote:
> Jak najszybciej znalezc te wiersze danej tabeli, ktore na obu
Porownaj HASHe rekordow majacych te same ID :-)
marcin
=?ISO-8859-2?Q?Adam_P=B3aszczyca?= - 19-06-2007 00:06
On Fri, 15 Jun 2007 16:53:17 +0200, jerry <jerry@niewazne.pl> wrote:
>Witam, >Poszukuję najbardziej optymalnego rozwiazania ponizszego problemu:
Przykro mi, nie ma najbardziej optymalnego rozwiązania. -- ___________ (R) /_ _______ Adam 'Trzypion' Płaszczyca (+48 502) 122688 ___/ /_ ___ ul. Na Szaniec 23/70, 31-560 Kraków, (012) 3783198 _______/ /_ http://trzypion.oldfield.org.pl/wieliczka/ ___________/ GG: 3524356
Marek Horodyski - 19-06-2007 00:06
=?iso-8859-2?Q?Re:_=5BOracle=5D_Porownanie_wierszy_z_tych_sam ych_tablic_n?==?iso-8859-2?Q?a_2_r=F3=BFnych_schematach?= Użytkownik "Adam Płaszczyca" <trzypion@oldfield.spamnie.org.pl> napisał w wiadomości news:n2mc731h6c13in54fbe0sfhehr98nc950n@4ax.com... > On Fri, 15 Jun 2007 16:53:17 +0200, jerry <jerry@niewazne.pl> wrote: > >>Witam, >>Poszukuję najbardziej optymalnego rozwiazania ponizszego problemu: > > Przykro mi, nie ma najbardziej optymalnego rozwiązania.
A nie można tu zastosować :
select * from A minus select * from B -- ?
Pozdrawiam, Marek Horodyski
Lucyna Witkowska - 20-06-2007 00:03
jerry <jerry@niewazne.pl> napisał: > Poszukuję najbardziej optymalnego rozwiazania ponizszego problemu: > Sa zainstalowane 2 srodowiska: testowe i produkcyjne - sa to 2 schematy. > Jak najszybciej znalezc te wiersze danej tabeli, ktore na obu > srodowiskach maja ten sam ID ale roznia sie jakas wartoscia w innych > kolumnach. Np:
> Tabela link@Tabela > ID | Kol1 | Kol2 ID | Kol1 | Kol2 > ----------------- ---------------- > 1 A A 1 A B > 2 A A 2 A A --> tylko ten jest identyczny > 3 B A 3 C B > 4 B B 4 A B
> Czyli interesuje mnie dostac w wyniku wszystkie wiersze oprócz ID=2 - bo > ten wiersz jest taki sam w obu tabelach.
Złącz te tabele (jesli nie sa BARDZO duze).
SELECT id, a.kol1, a.kol2, b.kol1, b.kol2 FROM a JOIN b USING (id) WHERE a.kol1<>b.kol1 OR a.kol2<>b.kol2;
Pozdrowienia, LW
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
=?UTF-8?Q?=5Bmysql=5D_jak_pobra=C4=87_warto=C5=9B=C4=87_ AUTO=5F?==?UTF-8?Q?INCREMENT=3F?=
Wydajność baz danych w zależności od poziomu izolacji ANSI/ISO
Czy zna (obsługuje) ktoś program Iso Draw ?
MYSQL - kodowanie w ISO-PL
strona plus baza w iso do utf-8
Kodowanie: z iso na utf
Jednoczesne sumowanie kolumn i wierszy oraz multiplikacja kolumn
[MS SQL 2005] =?windows-1250?Q?Ilo=9C=E6_wiersz=F3w_w_zbiorze_wynikowym?=
[SQL] W jaki sposób zwrócić wiersze które NIE znadują się w 2 pozostałych kolumnach
Wstawianie nowego wiersza w przypadku jego braku podczas SELECT w PostgreSQL
zanotowane.pldoc.pisz.plpdf.pisz.pllisinski.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 |
|