Jag har en databas med två tabeller som båda innehåller fälten artist och titel. Nu vill jag att de poster som finns i tabell1 och som inte finns i tabell2 ska läggas till tabell2 (alltså de poster där inte den kombinationen av artist och titel redan finns i tabell2). Säg ingenting om upplägget av databaserna för det måste nästan bli som det är. Misstänker att det finns nåt lurigt sätt att göra detta med nån sql-fråga. Fixar det inte själv. Kan inte nån visa hur jag ska skriva. Jag har alltså två tabeller där det finns en kolumn med titlar och en med artister i varje tabell. Nu vill jag läsa in alla rader som inte redan finns (alltså där just den kombinationen av artist och titel inte redan finns) från den ena tabellen till den andra. Hur gör jag? Jättetacksam för svar! Frågan kunde se ut något sånt här: Jättesnällt att du försöker hjälpa mig men det verkar inte funka. Fastän tabell2 är tom så läggs det inte till något. Hej. Opps. Fel tabell i whersatsen:SQL-fråga
Sv: SQL-fråga
Sv: SQL-fråga
<code>
INSERT INTO tabell2 (artist, titel)
SELECT tabell1.artist, tabell1.titel
FROM tabell1 LEFT JOIN tabell2 ON (tabell1.artist = tabell2.artist) AND (tabell1.titel = tabell2.titel)
WHERE ((tabell1.artist Is Null) And (tabell1.titel Is Null))
</code>Sv: SQL-fråga
Sv: SQL-fråga
Prova detta :
Insert into tabell2 (field1, field2, osv...)
select field1, field2, osv...
from tabell1
where not exists
(select null from tabell2 where tabell2.fieldx = tabell1.fieldx);
/UffeSv: SQL-fråga
<code>
INSERT INTO tabell2 (artist, titel)
SELECT tabell1.artist, tabell1.titel
FROM tabell1 LEFT JOIN tabell2 ON (tabell1.artist = tabell2.artist) AND (tabell1.titel = tabell2.titel)
WHERE ((tabell2.artist Is Null) And (tabell2.titel Is Null))
</code>