webForumDet fria alternativet

visa data rad från en tabell om den är representerad i en annan

Databaser & SQL

1 svar · 261 visningar · startad av Bjuris

Medlem sedan juli 2001514 inlägg
Frågan#1

Jag har en tabell som innehåller ett doc_id (unikt)
i en annan tabell finns även doc_id, men det kan vara hur många som helst med samma id.

Tycker inte att det borde vara så svårt egentligen, jag har antagligen bara snurrat in mig på join.

SELECT    ms.*
FROM         map_search AS ms
Join milestone mil on ms.doc_id = mil.doc_id

Denna så får jag ju tillbaka en rad per rad det finns i milestone tabellen.
men jag vill ju bara veta om den finns i milestone tabellen och i så fall presentera raden från map_search.

I senare fall skulle jag även behöva select kriterier från milestone tabellen så jag tror inte jag kan använda någon sorts exist.

Medlem sedan dec. 20025 483 inlägg
#2
SELECT    ms.*
FROM         map_search AS ms
where exists (select 1 from milestone where doc_id = ms.doc_id)

Angående din sista mening: hur vill du att resultatet skall bli i det fallet?

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