Ge exempel, t.ex.
Om du har följande data
id1 | id2
--------
1 1
vad skall hända då?
Och detta fall
d1 | id2
--------
1 2
2 3
5 svar · 550 visningar · startad av Php
Tjena,
Det är så att jag har en tabell med två kolumner, id1 och id2. Jag vill att dessa två ska innehålla unika värden.
Jag behöver därför hjälp nu att ta bort rader där värdet i den ena kolumnen redan existerar i den andra.
Jag letar alltså efter en lösning för att SQL ska leta igenom alla rader i kolumn "id2" och kolla om värdet i posten redan finns i "id1", isåfall ska den radera den posten.
Vet inte riktigt hur jag ska förklara, men jag hoppas att ni förstår vad jag menar.
Ge exempel, t.ex.
Om du har följande data
id1 | id2
--------
1 1
vad skall hända då?
Och detta fall
d1 | id2
--------
1 2
2 3
d1 | id2
---------
1 1
1 1 // Denna rad ska tas bort
Det går inte lösa med hjälp av en delete om du inte har någon annan unik kolumn.
Det jag undrade var när du har enbart en rad där id1 = id2
fall2:
delete from t
where id2 in (select id1 from t)
and id1 <> id2
Får detta felmeddelande:
#1093 - You can't specify target table 'friends' for update in FROM clause
Angående unik kolumn vet jag inte riktigt vad du menar, men jag har även en kolumn i i tabellen som heter "id".
Ingen som har något förslag på hur jag kan lösa detta? :l