webForumDet fria alternativet

SQL-fråga som returnerar Id om alla relaterade poster har ett visst värde

Databaser & SQL

2 svar · 363 visningar · startad av devotion

Medlem sedan jan. 20013 582 inlägg
Frågan#1

Hej!

En riktig höjdarrubrik...

Men iaf.

Jag har en fråga som skall returnera ett Id, enligt nedan:

SELECT t.[Id] 
From tblTask t
INNER JOIN tblDocRef dr
ON t.[Id] = dr.[OwnerId]
inner join tblDocument d
on d.id = dr.docid
WHERE dr.[OwnerType] = 2
AND d.[DocType] <> 'Link'
AND t.[Status] = 4

d.[DocType] kan ha olika värden. Typ 'Link', 'Foo'...

I nuläget så returneras ju Id´t om tex 2 poster i tblDocument har värdet 'Link' och en 'Foo'

Jag vill att Id endast skall returneras om ALLA [DocType] i tblDocuments inte är 'Link'

Kan man göra så?

Mvh
Henrik

Medlem sedan dec. 200012 464 inlägg
#2
select t.Id 
  from tblTask t
  join tblDocref dr on t.Id = dr.OwnerId
 where not exists
      (select *
         from tblDocument d
        where d.id = dr.docid
          and d.DocType = 'Link')
  and t.Status = 4
  and dr.ownerType = 2
Medlem sedan jan. 20013 582 inlägg
#3

Thanx! :bire

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