5 Mart 2026 Perşembe

YILLIK DOĞUM SAYILARI VE TOPLAMI

 SELECT     NVL(DS.DOGUMSEKLI, 'TOPLAM') DOGUMSEKLI,
    COUNT(*) ADET FROM HASTANE.KIMLIK K
JOIN HASTANE.PROTOKOL P 
    ON K.DOSYA_NO = P.DOSYA_NO
JOIN HASTANE.BEBEK B 
    ON P.DOSYA_NO = B.DOSYA_NO 
   AND P.PROTOKOL_NO = B.PROTOKOL_NO
LEFT JOIN HASTANE.LIST_DOGUMSEKLI DS 
    ON B.DOGUM_SEKLI = DS.NO
WHERE EXTRACT(YEAR FROM K.DOGUM_TAR) = 2025
GROUP BY ROLLUP(DS.DOGUMSEKLI)
ORDER BY     CASE WHEN DS.DOGUMSEKLI IS NULL THEN 1 ELSE 0 END,
    ADET DESC;

23 Kasım 2017 Perşembe

İLAÇ RAPORU BİTİMİ 1 HAFTA KALAN HASTALAR

SELECT upper(K.ADI),upper(K.SOYADI), K.CEP_TEL,R.BIT_TARIHI rapor_bitis_tar FROM HASTANE.KIMLIK K,hastane.protokol p,hastane.rapor r
WHERE to_char((TO_DATE(R.BIT_TARIHI,'DD.MM.YYYY')-7),'DD MM')=TO_CHAR(SYSDATE,'DD MM') and k.dosya_no=p.dosya_no and p.protokol_no=R.PROTOKOL_NO

6 Mart 2017 Pazartesi

HASTALIK VERİLERİ

SELECT TO_CHAR (T.tarih, 'MONTH') "Ay",TO_CHAR (T.tarih, 'YYYY') "Yıl",TL.ICD,TL.TANI,COUNT(*) SAYI
FROM HASTANE.TANI T,HASTANE.TANILAR TL,HASTANE.KIMLIK K,HASTANE.PROTOKOL P
WHERE T.TARIH BETWEEN to_date('01.01.2016','dd.mm.yyyy hh24:mi:ss') and to_date('31.12.2017 23:59:00','dd.mm.yyyy hh24:mi:ss')
AND T.TANI_KODU=TL.TANI_KODU(+) and T.ICD LIKE 'J4%'  ---('J40','J41','J42','J43','J44','J45')
AND T.DOSYA_NO=K.DOSYA_NO(+) AND T.PROTOKOL_NO=P.PROTOKOL_NO(+)
AND P.BOLUM='75'
GROUP BY T.TANI_KODU,TL.ICD,TL.TANI,
         TO_CHAR (T.tarih, 'MONTH'),TO_CHAR (T.tarih, 'YYYY')

Doktorlara Göre Muayene ve Yatan Hasta Sayıları

select m.*,nvl(y.yatan_sayi,0) "Yatan Hasta Sayısı" from
(SELECT dr.DR_KODU,dr.ADI_SOYADI"Doktor Adı Soyadı" ,count(*) muayene_sayi FROM HASTANE.PROTOKOL P,hastane.DRADI DR,hastane.islemyap a
WHERE P.DR_KODU=dr.dr_kodu
and a.PROTOKOL_NO=p.PROTOKOL_NO
and a.FATURA_TIPI=0
and p.HASTA_A_Y=1
and ((a.grup_kodu = 250 ))
and p.gtarih between :tarihbas AND :tarihbit
group by dr.DR_KODU,dr.ADI_SOYADI) m,
(SELECT dr.DR_KODU,dr.ADI_SOYADI "Doktor Adı Soyadı",count(*) yatan_sayi FROM HASTANE.PROTOKOL P,hastane.DRADI DR
WHERE P.DR_KODU=dr.dr_kodu
and p.HASTA_A_Y=2
and p.gtarih between :tarihbas AND :tarihbit
group by dr.DR_KODU,dr.ADI_SOYADI) y
where y.dr_kodu(+)=m.DR_KODU

Hasta hangi doktora kaç kez muayeneye gelmiş

SELECT P.DOSYA_NO "Dosya No",K.adi||' '||k.soyadi "Adı
Soyadı",bl.BOLUM_ADI "Bölüm Adı",dr.ADI_SOYADI "Doktoru",COUNT(*) "Geliş
Sayısı" FROM HASTANE.KIMLIK K,HASTANE.PROTOKOL P,hastane.bolum
bl,hastane.dradi dr
WHERE K.DOSYA_NO=P.DOSYA_NO and dr.DR_KODU=p.DR_KODU and p.BOLUM=bl.BOLUM
and (K.ACILIS_TARIHI BETWEEN to_date('01.01.2017','dd.mm.yyyy hh24:mi:ss') and to_date('07.12.2017 23:59:00','dd.mm.yyyy hh24:mi:ss') )
GROUP BY P.DOSYA_NO,K.adi||' '||k.soyadi,bl.BOLUM_ADI,dr.ADI_SOYADI

Saatlik Hasta Sayısı

select substr(to_char(p.GTARIH,'dd.mm.yyyy hh24:mi'),12,2)||': 00' "Saat",to_char(p.GTARIH,'dd.mm.yyyy') "Tarih",count(*) "Hasta Sayısı"
from hastane.protokol p
where p.gtarih BETWEEN to_date('01.01.2017','dd.mm.yyyy hh24:mi:ss') and to_date('07.12.2017 23:59:00','dd.mm.yyyy hh24:mi:ss')
group by substr(to_char(p.GTARIH,'dd.mm.yyyy hh24:mi'),12,2) ,to_char(p.GTARIH,'dd.mm.yyyy')
order by to_char(p.GTARIH,'dd.mm.yyyy'),substr(to_char(p.GTARIH,'dd.mm.yyyy hh24:mi'),12,2)

Bölüm Ve Doktora Göre Yapılan İndirim Miktarları

SELECT a.ucretcikis "İndirim Tutarı", ROUND (a.indirim_yuzdesi, 2) "%",a.adi_soyadih "Hasta Adı Soyadı" , a.dosya_no "Dosya No", a.protokol_no "Protokol No", a.toplam_indirimsiz "İndirimsiz Toplam",
 a.toplam_indirimli "İndirimli Toplam", a.indirim "İndirim Tutarı", a.kullanici "İndirim Yapan",
 a.aciklama "Açıklama", a.kurum_adi "Kurum Adı", a.bolum_adi "Bölüm Adı",a.q "Doktoru",a.tarih "Tarih",a.sebep "İndirim Sebebi"
  FROM (SELECT   k.adi ||' '|| k.soyadi adi_soyadih, k.dosya_no,p.protokol_no,dr.adi_soyadi q  ,ks.ucretcikis, SUM (i.ucreti)
toplam_indirimli,SUM (i.ilkucret) toplam_indirimsiz,(SUM (NVL (i.ilkucret, 0)) - SUM (NVL (i.ucreti, 0))) indirim, ks.kullanici, ks.aciklama,((ks.ucretcikis / SUM (i.ilkucret)) * 100)
indirim_yuzdesi,kr.kurum_adi, bl.bolum_adi, dr.adi_soyadi,ks.tarih,ins.sebep FROM hastane.islemyap i,hastane.iptal_neden ins,
  hastane.protokol p,hastane.kimlik k, hastane.kasadetail ks,   hastane.kurum kr,
  hastane.bolum bl,
  hastane.dradi dr
  WHERE ks.tarih BETWEEN to_date('01.01.2017','dd.mm.yyyy hh24:mi:ss') and to_date('07.12.2017 23:59:00','dd.mm.yyyy hh24:mi:ss')
 AND ks.protokol_no = p.protokol_no(+)
 AND ks.protokol_no = i.protokol_no(+)
 AND ks.makbuz_no = i.makbuz_no(+)
 AND ks.giris_cikis = 'C'
 AND ks.iptal = 'F'
 AND ks.indirim = 'T' and ks.indirim_nedeni=ins.sira_no(+)
 AND p.dosya_no = k.dosya_no(+)
 AND p.kurum_no = kr.kurum_no(+)
 AND p.bolum = bl.bolum(+)
 AND p.dr_kodu = dr.dr_kodu(+)
  GROUP BY k.adi || ' ' || k.soyadi,
  k.dosya_no,
  p.protokol_no,
  ks.kullanici,
  ks.aciklama,
  ks.ucretcikis,
  kr.kurum_adi,
  bl.bolum_adi,
  dr.adi_soyadi,
  ks.tarih,ins.sebep  ) a
 WHERE a.indirim > 0

Katkı Payı Alınmayan Hastalar

NOT: KURUM_KODU YAZAN YERLERE KENDİ SGK KURUM KODUNUZU YAZIN

select p.PROTOKOL_NO,k.DOSYA_NO,k.ADI||' '||k.SOYADI

Hasta,p.GSS_TAKIP_NO,p.GSS_BASVURU_NO,p.GTARIH Gelis_tarihi,l.ADI||'

'||l.SOYADI Kullanici,p.KULLANICI_ACAN ,
b.BOLUM_ADI,akr.KURUM_ADI

 from hastane.protokol p,hastane.kimlik k,hastane.login l,hastane.dradi

dr,hastane.bolum b,hastane.altkurum akr
where p.DOSYA_NO=k.DOSYA_NO
and p.BOLUM=b.BOLUM and p.DR_KODU=dr.DR_KODU
and p.KULLANICI_ACAN=l.LOGINAME and p.ALT_KURUM_NO=akr.ALT_KURUM_NO(+)

and protokol_no in  (select m.protokol_no from
(select p.PROTOKOL_NO  from hastane.protokol p,hastane.islemyap a
where p.HASTA_C_E='C' and p.KURUM_NO=200 and p.BOLUM<>75
and a.protokol_no=p.protokol_no and a.FATURA_TIPI=0 and a.grup_kodu=250
and p.gtarih between :tarihbas
and :tarihbit
group by p.protokol_no) m,
(select p.PROTOKOL_NO  from hastane.protokol p,hastane.islemyap a
where p.HASTA_C_E='C' and p.KURUM_NO=200 and p.BOLUM<>75
and a.protokol_no=p.protokol_no and a.FATURA_TIPI=4
and p.gtarih between :tarihbas
and :tarihbit
group by p.protokol_no) k
where k.protokol_no(+)=m.protokol_no
and k.protokol_no is null )

TANI BOLUM İST. HANGİ TANIDAN HANGİ BÖLÜM KAC KEZ KULLANMIŞ

SELECT   ROWNUM "Sıra No", a."ICD Kodu", a."Tani Adi",a."Bölüm Adı", a."Adet", a."%"
 FROM (SELECT   t.icd "ICD Kodu", tn.tani "Tani Adi",bl.bolum_adi "Bölüm Adı", COUNT (*) "Adet",
 ROUND (  COUNT (*)  * 100  / (SELECT COUNT (*) "Adet" FROM hastane.tani t, hastane.tanilar tn   WHERE tn.icd = t.icd  AND t.tarih BETWEEN :tarihbas AND :tarihbit ),
  1 ) "%"  FROM hastane.tani t, hastane.tanilar tn,hastane.bolum bl WHERE tn.icd = t.icd AND t.tarih BETWEEN :tarihbas AND
:tarihbit and bl.BOLUM=t.BOLUM GROUP BY t.icd, tn.tani,bl.bolum_adi ORDER BY COUNT (*) DESC) a GROUP BY ROWNUM, a."ICD Kodu", a."Tani Adi",a."Bölüm Adı", a."Adet", a."%"
  HAVING ROWNUM < 51 ORDER BY ROWNUM

Öne Çıkan Yayın

Faydalı dosylar-Link üzerine tıklayarak indirebilirisniz

 Tutarsız eimza hatası Out of hatası