Gå til innhold

trenger hjelp med innvikla sql-spørring


Anbefalte innlegg

Okay, jeg har noen tabeller:

 

TIMEBESTILLING (ansattnr*, pasientnr*, dag*, tid)

LEGE ( ansattnr, legenavn)

PASIENT ( pasientnr , fornavn, etternavn)

 

oppgaven lyder: Skriv ut fornavn og etternavn på de pasientene som har hatt (eller skal ha) samme lege som pasient ’P100’.

 

Tips?

Endret av Gr0v
Lenke til kommentar
Videoannonse
Annonse

Indre spørring i where clausen eller joining av pasient tabellen to ganger (bruk alias)

 

Indre spørringer kan f.eks se slik ut

 

SELECT ....

FROM ....

WHERE ....EXISTS (SELECT 1 FROM .... WHERE ...)

 

joining to ganger kan se slik ut

SELECT ....

FROM ....

INNER JOIN tabellA as minbil ON ....

INNER JOIN tabellB as naboensbil ON ....

 

Det ser ut som en skoleoppgave, så jeg antar du ikke spør oss om å løse oppgaven for deg?

Endret av blackbrrd
Lenke til kommentar

SELECT p.fornavn
, p.etternavn
FROM 
-- Hent alle leger som har hatt eller skal ha pasienten(e)
(
	SELECT tb.ansattnr
	FROM TIMEBESTILLING tb
		INNER JOIN LEGE l on l.ansattnr = tb.ansattnr
	WHERE 0 = 0
		AND tb.pasientnr IN ('P100')
) AS sub
-- Hent alle timebestillinger for alle disse legene
INNER JOIN TIMEBESTILLING tb on tb.ansattnr = sub.ansattnr
-- Hent alle pasienter for disse timebestillingene
INNER JOIN PASIENT p on p.pasientnr = tb.pasientnr

 

Trenger vel strengt tatt ikke å kobles mot LEGE, da.

Endret av Bruker30050
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...