webForumDet fria alternativet

Motsatsen till UNION i SQL?

8 svar · 763 visningar · startad av Nickemannen

NickemannenMedlem sedan aug. 20003 575 inlägg
#1

Vad är motsatsen till UNION i SQL?
Jag använder mig utav MySQL om det är någon skillnad mellan databaserna.

emissionMedlem sedan dec. 19996 721 inlägg
#2

Och vad menar du med "motsatsen till UNION"? Om du vill plocka ut t.ex. intersektionen (snitt) så får du använda dig av olika JOIN-varianter.

NickemannenMedlem sedan aug. 20003 575 inlägg
#3

UNION lägger ju ihop alla skillnader och sedan om man väljer ALL så tar den även med dubletter.

Men jag vill att i det fall det skulle bli dubletter ta bort båda posterna.

NickemannenMedlem sedan aug. 20003 575 inlägg
#4

Jag tror jag precis löste det med att via en Join välja att köra <> istället för = tecknet som hade slått ihop dom.

NickemannenMedlem sedan aug. 20003 575 inlägg
#5

tyvärr hade jag fel provade på för få rader :|.

sl0kMedlem sedan maj 2005562 inlägg
#6

Beskriv din tabellstruktur, ev relationer och exakt vad du vill åstadkomma så är det lättare att hitta en lösning.

NickemannenMedlem sedan aug. 20003 575 inlägg
#7

Okej, jag har en Tabell med artiklar
Och en en indextabell med artikelId:n

Den ena heter ParentID och den andra heter ChildID och är koppladade till artikel.
Jag vill med en sql fråga få ut alla artiklar som inte har någon Parent, alltså är ju detta alla som inte finns med i indextabellens ChildID.

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

Troligtvis är det någonting liknande

select <columns>
  from artiklar a
 where a.id
not in (select i.parentid
          from indextbl i)

du är ute efter.

sl0kMedlem sedan maj 2005562 inlägg
#9
SELECT 
    *
FROM 
    indextbl i
RIGHT JOIN 
    artiklar a
    ON 
    i.parentid = a.id
WHERE
    i.parentid IS NULL;
137 ms totalt · 3 externa anrop · v20260731065814-full.37765c92
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)