webForumDet fria alternativet

Jämförelse mot stor mängd data

Databaser & SQL

2 svar · 242 visningar · startad av OveRRidE

Medlem sedan feb. 200112 078 inlägg
Frågan#1

Jag har två tabeller, en som innehåller närmare 10 000 rader (table1) och en som innehåller nånstans runt 5-600 (table2).

Alla rader i kolumn2, i table2 skall jämföras och hittas i kolumn1, i table1 där de skall raderas ur table1. Alla kolumner.

Hur gör man detta utan att behöva loopa genom recordsets och hålla på?

Medlem sedan juni 200032 967 inlägg
#2
DELETE FROM Table1 WHERE ID IN (SELECT ID FROM Table2)

Ungefärligen. ;)

Mvh,

Medlem sedan aug. 200226 inlägg
#3

Selecta

Du kan skriva

"SELECT a.*, b.* FROM table1 a INNER JOIN table2 b ON 1.id = b.id"

den gör en inner join och gör en relation genom id't i table 1 och id't i table 2

259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)