SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

SEQUENCE oracle

CREATE SEQUENCE PBS_SOS_DENG_ID_SEQ
  MINVALUE 1
  MAXVALUE 9999999999999999999999999999
  START WITH 1
  INCREMENT BY 1
  CACHE 20;


Select PBS_SOS_DENG_ID_SEQ.nextval from dual

Jasper Reports Multiple Database Connection

Subreports kullanarak bu işlem yapılabilir. Subreport'un properties'inden aşağıdaki işlemler yapılalarak, subreport başka bir veri tabanına bağlanabilir.

connection type: use a connection expression
connection expression:
java.sql.DriverManager.getConnection("jdbc:sqlserver://1.1.1.1:1433;databaseName=xxx;user=xx;Password=xx")


Subreport hakkında bilgi için tıkla

PLSQL UPDATE FROM ANOTHER TABLE

UPDATE ATS_ARAC_TAHSIS ATT set ATT.ID_KBS_SERVIS =(
SELECT a.id_kbs_servis
FROM ATS_ARAC_AKTARIM A 
WHERE  A.PLAKA = ATT.PLAKA 
) WHERE exists( SELECT a.id_kbs_servis FROM ATS_ARAC_AKTARIM A WHERE A.PLAKA = ATT.PLAKA )

PLSQL Row Birleştirme

SELECT LISTAGG(YORUM, ',') WITHIN GROUP (ORDER BY ID) AS XXX
FROM INB_YORUM
WHERE ID_INB_DOSYA = DOSYA.ID
GROUP BY ID_INB_DOSYA

PLSQL GET YEARS BETWEEN TWO DATES

SELECT
Y.YIL,            --year
Y.TARIH,          --date
T.BASLAMA_TARIHI, --startdate
T.AYRILMA_TARIHI  --enddate

FROM PBS_KIDEM_HESABI KB,  PBS_TARIHCE T,  PBS_PERSONEL P ,
KBB_YILLAR Y      --a table with year and date columns 

WHERE 1=1 

AND KB.PERSONEL_TURU = P.TURU
AND KB.TARIHCE_TURU = T.TURU
AND P.ID = T.ID_PBS_PERSONEL

AND KB.KIDEM_HESABI_ETKISI = 'ARTTIRIR'
AND KB.ID_PBS_KIDEM_HESABI_TURU = 4


---**---
AND (Y.TARIH BETWEEN TRUNC(T.BASLAMA_TARIHI,'YEAR') AND T.AYRILMA_TARIHI)
---**---

AND (P.ID=110947251)

ORDER BY T.BASLAMA_TARIHI,Y.YIL

--end of sql


KBB_YILLAR


SQL Resultset

SpagoBI Multi-Select Parameter (Çoklu Seçim)


(INSTR($P{GELIRKODU},''''||KOD.ID||'''')>0)
!Bunda $P{GELIRKODU} String olmalı.


yada

Parametreden gelen çoklu değeri kullanabilmek için sql sorgusunu şöyle oluşturmalıyız.

SELECT * FROM XXX WHERE  FIRMAID IN (  $P!{FIRMA}  )
Ünlem işareti parametrenin bir string olarak değil sql'in parçası olarak çalışmasını sağlıyor. Kullanabilmemiz için parametreye default değer vermemiz  gerekir.  Mesela: "0"


Bazı Sql'ler

--PLSQL için daha çok dbEaver kullanıyorum. Bana daha basit geliyor.

AND (P.DURUMU =$P{DURUMU} OR $P{DURUMU} = 'HEPSİ' OR $P{DURUMU}IS NULL)
AND (P.TURU =$P{TURU} OR $P{TURU} = 'HEPSİ' OR $P{TURU} IS NULL)
AND (P.ID_PBS_ISYERI = $P{ISYERI} OR $P{ISYERI} IS NULL)
AND ((P.KURUM_SICIL_NO BETWEEN $P{SICIL1} AND $P{SICIL2}) OR ($P{SICIL1} IS NULL))


AND(D.BASLAMA_TARIHI  BETWEEN TO_DATE($P{DONEM},'DD/MM/YYYY') AND TO_DATE($P{DONEM2},'DD/MM/YYYY')+1 )



AND ($P{GELIRKODU} IS NULL OR (INSTR($P{GELIRKODU},KOD.ID)>0))

AND (KOD.ID IN (

select GELIR.ID_BGP_GELIRKOD
from BGP_SERVIS_GELIRKOD GELIR
WHERE GELIR.ID_BGP_SERVIS=$P{SERVIS}


)OR($P{SERVIS} IS NULL))