webForumDet fria alternativet

Sortera bort

7 svar · 533 visningar · startad av Uffe82

Uffe82Medlem sedan feb. 200711 inlägg
#1

Hej jag har två tabeller..

CREATE TABLE `matcher` (
`match_id` smallint(5) unsigned NOT NULL auto_increment,
.........
PRIMARY KEY (`match_id`)
) TYPE=MyISAM;

CREATE TABLE `resultat` (
`match_id` smallint(6) NOT NULL default '0',
................
PRIMARY KEY `match_id` (`match_id`)
) TYPE=MyISAM;

Problemet är att jag vill ta bort från tabellen resultat alla poster som inte finns i tabellen matcher... alltså ta bort de rader som inte matchar match_id med matcher tabellen.

Har försökt med det mesta men får det inte att fungera.. så nu hoppas jag på snabb expert hjälp..

TACK!

LarsGMedlem sedan dec. 200012 465 inlägg
#2
select <kolumner>
  from resultat
  where match_id not in 
    (select match_id
        from matcher)
Uffe82Medlem sedan feb. 200711 inlägg
#3

Närmare lösningen?

DELETE FROM resultat WHERE match_id NOT IN (SELECT match_id FROM matcher)

Får ERROR_CODE #1064 på denna,.. borde vara rätt men det skiter sig...

Vad kan vara fel.. får inte tabellerna innehålla samma namn på två kolumner eller?

LarsGMedlem sedan dec. 200012 465 inlägg
#4

Om du får ett felmeddelande, posta feltexten.

Uffe82Medlem sedan feb. 200711 inlägg
#5

here it is

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT match_id FROM matcher)' at line 1

@ndersMedlem sedan juni 200026 914 inlägg
#6

Vilken version av MySQL?

Uffe82Medlem sedan feb. 200711 inlägg
#7

MySQL klientversion: 4.1.11

Enligt phpmyadmin

Peter SMedlem sedan dec. 20025 484 inlägg
#8

Det som är intressant, är vilken serverversion som körs.

Genererad på 371 ms · cache AV · v20260730165559-full.f96bc7eb