Vraag : SQL 2005 - vraag om zittingsverslagen voor Webtoepassing uit te sluiten

Ik heb een lijst die de user-id opslaat, session_id, en session_type wanneer een gebruiker in de Webtoepassing ondertekent en wanneer de gebruikerslogboeken uit de Webtoepassing. Wanneer de gebruiker binnen ondertekent, leidt het tot een rij voor session_type = „4“. Wanneer de gebruiker aflogt, leidt het tot een rij voor session_type = „5“. Session_id en de user-id zijn het zelfde voor beide rijen.  Bijvoorbeeld ondertekende

User_Name Session_id Session_type
12345 2222 4
98765 3333 4
56789 4444 4
12345 2222 5

In dit voorbeeld drie gebruikers in de Webtoepassing en één van de afgelogde gebruikers. Ik heb de vraag nodig om slechts huidige binnen ondertekende gebruikers terug te keren. Dit voorbeeld zou 2 verslagen moeten terugkeren.  Mijn vraag is

select user_name, session_id, session_type
from table
where session_type in („4“, „5“) resultaten

The keert alle 4 verslagen terug. Hoe ik verslagen uitsluit waar session_id een session_type zowel „4“, als „5“ bevat.  Dank!

Antwoord : SQL 2005 - vraag om zittingsverslagen voor Webtoepassing uit te sluiten

selecteer user_name, session_id, session_type
van lijst t
waar session_type = „4“
en niet bestaat (
selecteer 1 van lijst waar user_name = t.user_name en session_type = „5“
)
Andere oplossingen  
 
programming4us programming4us