Forum: SQL |
Thema:
Re: Vergleichen von 2 Tabellen (zeilenbasierend) |
Von:
Jens Buthe (
12.10.2005 13:54) |
versuch mal:
select name as [Name OLD], email as [email OLD], text as [TEXT OLD],
'-' as [Name New], '-' as [email New], '-' as [TEXT New]
from tabelle1 tab1
where name in
(select tab2.name from tabelle2 tab2
where tab1.name = tab2.name
and (tab1.email <> tab2.email or tab1.text <> tab2.text))
union
select '-', '-', '-',
name, email, text
from tabelle2
where name not in
(select name from tabelle1)
bzw.
select name as [Name OLD], '-' as [Name New], email as [email], text as [TEXT]
from tabelle1 tab1
where name in
(select tab2.name from tabelle2 tab2
where tab1.name = tab2.name
and (tab1.email <> tab2.email or tab1.text <> tab2.text))
union
select '-', name, email, text
from tabelle2
where name not in
(select name from tabelle1)
Betreff |
Von |
Datum |
|
  |
Re: Vergleichen von 2 Tabellen (zeilenbasierend)
Wenn Du 2 strukturgleiche Tabellen vergleichen möchtest müssen<br>3 Fälle unterschieden werden<br><br>1. Fall Neuer Datensatz<br>2. Fall gelöschter Datensatz<br>3. Fall geänderter Datensatz<br><br>Fall 1 +2 kannst... |
 |
 |
 |
|
|
G.
Guest
|
30.10.2005 12:42 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!