Jump to content

Stored Procedure mit SQL Join


Recommended Posts

Hallo zusammen,

zuerst muss ich sagen, dass ich mit SQL bisher nicht viel am Hut hatte.

Ich habe folgende drei Tabellen aus der Datenbank eines Krankenhausinformationssystems (KIS):

Tabelle "HoHospitalisation" (enthält die Behandlungsfalldaten, d.h. die mit einer Krankenhausaufnahme bzw. einem -aufenthalt eines Patienten verbundenen Daten)
HoRefnr |HoPaRefnr | HoAufnahmenummer | HoAufnahmedatum | HoAufnahmezeit | HoEntlassungsdatum | HoEntlassungszeit | ...

Tabelle "vSYSMEDZ" (enthält die ärztlich verordneten Medikamente)
MEDZRefnr | MEDZName | MEDZWirkstoff | MEDZVForm | ...

Tabelle "MEDZZMEDZHoZuordnung" (Zuordnungstabelle "Medikamente zu Fall")
MEDZZMEDZRefnr | MEDZZHoRefnr | MEDZZHoDatum | MEDZZHoDosis | MEDZZHoIntervall

Ich möchte nun eine Stored Procedure anlegen, welche die Medikamente eines Patienten bei Entlassung (=Entlassmedikation) zurückgibt. Dabei wird der Stored Procedure ein Identifikator vom Fall übergeben. Als Rückgabe soll je Arzneimittel die Bezeichnung, der Wirkstoff, die Dosis sowie das Dosierungsintervall ausgegeben werden.

Meine Stored Procedure:
 

CREATE Procedure UDTCTXENTLMEDIS

@ho int
AS
BEGIN

DECLARE @MNAME varchar (255), @MWIRKSTOFF varchar (255),
@ MDOSIS varchar (255), @MINTERVALL varchar (255)

SELECT @MNAME = MEDZName, @MWIRKSTOFF = MEDZWirkstoff,
@MDOSIS = MEDZZHoDosis, @MINTERVALL = MEDZZHoIntervall
FROM vSYSMEDZ JOIN MEDZZMEDZHoZuordnung ON MEDZRefnr = MEDZZMEDZRefnr
JOIN HoHospitalisation ON MEDZZHoRefnr = HoRefnr
WHERE MEDZZHoRefnr = @ho AND MEDZZHoDatum = HoEntlassungsdatum
END



Ist das so korrekt?! Leider habe ich nicht die Möglichkeit es zu testen und bin daher um jede Hilfe und ggf. Berichtigung sehr dankbar!

Viele Grüße

Susann

Link to post

Moin,

 

Warum deklarierst du die ganzen Variablen, wenn du sie nicht verwendest? Deine Anforderung klingt so, als könntest du sie mit einem simplen SELECT mit JOIN lösen. Rein syntaktisch sieht das nicht verkehrt aus, aber mehr kann man dazu nicht sagen.

 

Um sowas zu entwickeln, solltest du immer eine Testmöglichkeit haben. So theoretisch hat man Code in den Sechzigern gebaut, das macht man heute nicht mehr.

 

Gruß, Nils

 

Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...