Avatar billede dsj Nybegynder
08. november 2002 - 23:34 Der er 1 kommentar og
1 løsning

Sletning af rækker i tabel

Jeg bruger nu MySQL version 4-et-eller-andet, som kan slette rækker fra flere tabeller samtidig og ved DELETE lave opslag i flere tabeller.
Det jeg gerne vil er, at slette nogle rækker fra én tabel, som IKKE har relation til en anden tabel - som følge:

DELETE FROM Event USING Event AS E, Contains AS C WHERE C.time != E.time;

Om der står != , <> eller = er ligemeget, ALLE rækker fra Event bliver slettet :(


Hvordan får jeg det her til at virke, så jeg kan slette alle de rækker i Event, som ikke har relation til nogen rækker i Contains ????
Avatar billede proaccess Nybegynder
09. november 2002 - 08:54 #1
Du må have låst sammenhængen fast i et decideret JOIN.

DELETE FROM Event USING Event LEFT JOIN Contains ON Event.time=Contains.time WHERE Contains.time IS NULL;

Jeg er lidt usikker på om det er 100% rigtig syntax, men udgangspunktet er altså at du joiner på time-info, og derefter slette dem hvor der er null i Contains...
Avatar billede dsj Nybegynder
09. november 2002 - 12:53 #2
Det virker ganske enkelt præcis som det skal :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester