08. april 2005 - 09:19
Der er
18 kommentarer og 1 løsning
delete from
hejsa, nogle der har en idé om hvorfor jeg ikke kan køre dette: DELETE FROM table1 WHERE table1.id <> table2.id
Annonceindlæg fra itm8
08. april 2005 - 09:22
#1
DELETE FROM table1, table2 WHERE table1.id <> table2.id
08. april 2005 - 09:23
#2
Wrong, vent lidt!!!!
08. april 2005 - 09:24
#3
Hvilken fejl for du?
08. april 2005 - 09:34
#4
Hvor kommer table2 fra ?
08. april 2005 - 09:34
#5
Hvad er det du vil slette???
08. april 2005 - 09:35
#6
Er det noget: DELETE FROM tabel1 WHERE id NOT IN (SELECET id FROM tabel2) du leder efter (kræver MySQL 4.1 eller nyere) ?
08. april 2005 - 09:44
#7
giver: You have an error in your SQL syntax near 'id FROM tabel2)' at line 2 (det skal siges at id=er noget tekst)
08. april 2005 - 09:45
#8
jeg vil slette en linie i tabel1 hvis dens id ikke findes i tabel2
08. april 2005 - 09:48
#9
har mysql 3.23.58-1
08. april 2005 - 09:48
#10
DELETE FROM tabel1 WHERE id NOT IN (SELECET id FROM tabel2) skal vel være DELETE FROM tabel1 WHERE id NOT IN (SELECT id FROM tabel2)
08. april 2005 - 10:01
#11
giver samme fejl
08. april 2005 - 10:04
#12
Se hvad arne skrev 09:35:34. Du kan ikke udføre den query med mindre du har MySQL 4.1 eller højere. For at vende tilbage til hvad du startede med at skrive, så kan du ikke slette fra en tabel, hvis du samtidig laver et join. MySQL kan ikke finde ud af hvilken tabel du vil slette fra.
08. april 2005 - 10:05
#13
ok. jeg skrev nu jeg havde "mysql 3.23.58-1" hvilke løsning kan der så bruges?
08. april 2005 - 10:08
#14
jakobsen: Jeg ved at du skrev det, det var også derfro jeg gjorde dig opmærksom på at du ikke skulle bruge mere tid på den query. Du bliver nød til at lægge en query der heneter alle id'erne et niveau ud. Kører du et scriptsprog, der kalder SQL?
08. april 2005 - 10:09
#15
du kan jo hive alle id ud i den ene tabel Så lave en løkke i den anden som sletter alle dem som er forskellige
08. april 2005 - 10:16
#16
bruger php.. jeg var lige ved at prøve sådan noget her, men det heller ik helt optimalt $result = mysql_query("SELECT id FROM tabel1"); while ($row = mysql_fetch_array($result)) { $tabel1id = $row[id]; $sql = mysql_query("SELECT id FROM tabel2 WHERE id='$tabel1id'"); if (!mysql_num_rows($sql)) { .........
08. april 2005 - 10:18
#17
hvad med: <? $rs = mysql_query("select id from tabel2"); $ids = array(); while($row = mysql_fetch_row($rs)) { array_push($ids,$row[0]); } mysql_query("DELETE FROM tabel1 WHERE id NOT IN (" . implode(",",$ids) . "));
08. april 2005 - 15:02
#18
har fundet et svar med et array, hvis du laver et svar, får du lige point
08. april 2005 - 15:12
#19
super
Computerworld tilbyder specialiserede kurser i database-management