porovnanie 2 tabuliek

Programovacie jazyky, rady, poradňa...
sundevil
VIP
VIP
Používateľov profilový obrázok
Príspevky: 4169
Registrovaný: 18 mar 2005, 12:03
Bydlisko: BA

porovnanie 2 tabuliek

Príspevok od používateľa sundevil »

mam 2 tabulky v mysql databaze (povedzme, ze maju nazov sheet1 a sheet2), ktore maju rovnaku strukturu poli tie su pomenovane field0, field1, field2, field3, field4, field5, field6 a field7
potrebujem ich porovnat a to porovnanie ma byt vlastne prienik, 2 riadky povazujem za zhodne ak sa zhoduju hodnoty v poliach field,1, field2, field3
-tabulky nemaju rovnaky pocet riadkov

vysledkom tohto porovnania bude ulozenie "tohto prieniku" do tabulky sheet1, cize sheet1 ostane a na koniec budu pridane "nove" riadky a nasledne celu tabulku treba zoradit podla pola field0



a este nieco specialne :)
je tabulka, ktora ma polia ako su popisane vyssie,
avsak potrebujem prekopirovat z kadzeho parneho riadku (n) pole field0 do predchadzajuceho riadku(n-1) do pola field7 a nasledne prebehnut tabulku a zmazat vsetky parne riadky tzn prekopirovanie vsetkych neprazdnych neparnych riadkov do novej(pomocnej) tabulky, nasledne zmazanie prvej tabulky a prekopirovanie (pomocnej) tabulku naspat do prvej :)


dakujem za akekolvek napady


nieco som s pomocou googla nasiel, malo by to troska pomoct
To find different values in corresponding fields:

SELECT a.PrimaryKey
FROM TableA a
INNER JOIN TableB b ON a.PrimaryKey = b.PrimaryKey
WHERE a.FieldA <> b.FieldA
OR a.FieldB <> b.FieldB
etc...

To find records in TableA that have no match in TableB:

SELECT a.PrimaryKey
FROM TableA a
LEFT JOIN TableB b ON a.PrimaryKey = b.PrimaryKey
WHERE b.PrimaryKey IS NULL
sundevil
VIP
VIP
Používateľov profilový obrázok
Príspevky: 4169
Registrovaný: 18 mar 2005, 12:03
Bydlisko: BA

Príspevok od používateľa sundevil »

povedzme ze prva cast sa bude dat spravit niecim takymto:

Kód: Vybrať všetko

insert into sheet3 (select t1.* from sheet1 t1 inner join sheet2 t2 on t1.field1 = t2.field1 and t1.field2 = t2.field2 and t1.field3 = t2.field3)
ale problem je este ta druha cast, ked to trochu zjednodusim - ako prekopirovat do novej tabulky vsetky neparne riadky prvej tabulky? (resp bez kopirovania - ako zobrazit neparne riadky celej tabulky)
navrh mam takyto:
http://openpaste.org/sk/4919/
avsak nejde mi to updavit aby sa vypisali len neparne riadky
Zamknuté