我在下面寫查詢,你可以看到它有很多子查詢。我想從子查詢拋出到外部查詢“dolzniki_terjatve.datum_vlozitve”和“dolzniki_terjatve.glavnica”,這樣我就不需要每次都改變它們。我嘗試了許多我在這里找到的解決方案,但似乎沒有任何效果。有什么猜測嗎?
select distinct on (upniki.naziv)
upniki.naziv,
b.stevilo,
b.glavnica_skupaj/b.stevilo as povprecna_glavnica,
b.glavnica_skupaj,
coalesce(taksa_vlozitve,0) coalesce(dodatna_taksa,0) as celotna_sodna_taksa,
coalesce(stroski,0)-coalesce(taksa_vlozitve,0) coalesce(dodatni_odvetniski,0)as vsi_odvetniski_stroski,
coalesce(stroski_izvrsitelja,0) as stroski_izvrsitelja,
coalesce(pravdni,0) as pravdni,
coalesce(glavnicapok,0) coalesce(glavnicapokobresti,0) as pokrivanje_glavice_z_obrestmi,
coalesce(poksodnataksavlozitve,0) coalesce(poksodnataksavlozitveobresti,0) coalesce(pokdodatnasodnataksa,0) coalesce(pokdodatnasodnataksaobresti,0) as pokrivanje_takse_z_obrestmi,
coalesce(pokodvstroskivlozitve,0) coalesce(pokodvstroskivlozitveobresti,0) coalesce(pokdodatniodvstroski,0) coalesce(pokdodatniodvstroskiobresti,0) as pokrivanje_odvetniskih_z_obrestmi,
coalesce(pokstroskiizvrsitelja,0) coalesce(pokstroskiizvrsiteljaobresti,0) as pokrivanje_stroskov_izvrsitelja_z_obrestmi,
coalesce(pokpravdnistroski,0) coalesce(pokpravdnistroskiobresti,0) as pokrivanje_pravdnih_z_obrestmi,
((coalesce(glavnicapok,0) coalesce(glavnicapokobresti,0))/b.glavnica_skupaj) as uspesnosti_glavnice,
((coalesce(poksodnataksavlozitve,0) coalesce(poksodnataksavlozitveobresti,0) coalesce(pokdodatnasodnataksa,0) coalesce(pokdodatnasodnataksaobresti,0))/(coalesce(taksa_vlozitve,0) coalesce(dodatna_taksa,1))) as uspesnosti_taks,
((coalesce(pokodvstroskivlozitve,0) coalesce(pokodvstroskivlozitveobresti,0) coalesce(pokdodatniodvstroski,0) coalesce(pokdodatniodvstroskiobresti,0))/(coalesce(stroski,0)-coalesce(taksa_vlozitve,0) coalesce(dodatni_odvetniski,1))) as uspesnosti_odvetniskih_stroskov,
((coalesce(pokstroskiizvrsitelja,0) coalesce(pokstroskiizvrsiteljaobresti,0))/coalesce(stroski_izvrsitelja,1)) as uspesnosti_stroskov_izvrsitelja,
((coalesce(pokpravdnistroski,0) coalesce(pokpravdnistroskiobresti,0))/coalesce(pravdni,1)) as uspesnosti_pravdni,
coalesce(a.pokrivanje,0) as pokrivanje_glavnice_z_vsemi_placili,
(coalesce(a.pokrivanje,0)/b.glavnica_skupaj) as procent,
coalesce(taksa_vlozitve,0) as taksa_vlozitve,
coalesce(stroski,0)-coalesce(taksa_vlozitve) as odv_stroski_vlozitve,
coalesce(dodatna_taksa,0) as dodatna_taksa,
coalesce(dodatni_odvetniski,0) as dodatni_odvetniski,
coalesce(stroski_izvrsitelja,0)as stroski_izvrsitelja,
coalesce(pravdni,0) as pravdni_stroski,
coalesce(glavnicapok,0) as glavnicapok,
coalesce(glavnicapokobresti,0) as glavnicapokobresti,
coalesce (poksodnataksavlozitve,0) as poksodnataksavlozitve,
coalesce(poksodnataksavlozitveobresti) as poksodnataksavlozitveobresti,
coalesce (pokodvstroskivlozitve,0) as pokodvstroskivlozitve,
coalesce(pokodvstroskivlozitveobresti,0) as pokoodvstroskivlozitveobresti,
coalesce(pokdodatnasodnataksa,0) as pokdodatnasodnataksa,
coalesce(pokdodatnasodnataksaobresti,0) as pokdodatnasodnataksaobresti,
coalesce(pokdodatniodvstroski,0) as pokdodatniodvstroski,
coalesce(pokdodatniodvstroskiobresti,0) as pokdodatniodvstroskiobresti,
coalesce(pokstroskiizvrsitelja,0) as pokstroskiizvrsitelja,
coalesce(pokstroskiizvrsiteljaobresti,0) as pokstroskiizvrsiteljaobresti,
coalesce(pokpravdnistroski,0) as pokpravdnistroski,
coalesce(pokpravdnistroskiobresti,0) as pokpravdnistroskiobresti
from dolzniki_terjatve
inner join paketi on dolzniki_terjatve.id_paket=paketi.id_paket
inner join upniki on paketi.id_upnik=upniki.id_upnik
left join (select paketi.id_upnik, coalesce(sum(znesek),0)-coalesce(sum(preplacilo),0) as pokrivanje
from specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.referenca=dolzniki_terjatve.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and datumplacila <=date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
group by paketi.id_upnik) as a on paketi.id_upnik=a.id_upnik
left join (select paketi.id_upnik, count(referenca) as stevilo, sum(glavnica) as glavnica_skupaj, coalesce(sum(stroski_vlozitve),0) as stroski, coalesce(sum(sodna_taksa_vlozitve),1) as taksa_vlozitve
from dolzniki_terjatve, paketi
where dolzniki_terjatve.id_paket=paketi.id_paket
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
group by paketi.id_upnik)
as b on paketi.id_upnik=b.id_upnik
left join (select paketi.id_upnik, sum(znesek) as dodatna_taksa
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and tip_stroskov='1'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabledodatnataksa on paketi.id_upnik=tabledodatnataksa.id_upnik
left join (select paketi.id_upnik, sum(znesek) as dodatni_odvetniski
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and tip_stroskov='2'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01' and
datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabledodatniodv on paketi.id_upnik=tabledodatniodv.id_upnik
left join (select paketi.id_upnik, coalesce(sum(znesek),0) as stroski_izvrsitelja
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and tip_stroskov='3'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tablestroskiizv on paketi.id_upnik=tablestroskiizv.id_upnik
left join (select paketi.id_upnik, sum(znesek) as pravdni
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and tip_stroskov='4'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-06-01'
and datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik) as tablepravdni on paketi.id_upnik=tablepravdni.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as glavnicapok
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavka='1' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelaglavnice on paketi.id_upnik=tabelaglavnice.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as glavnicapokobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavka='1' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelaglavniceobresti on paketi.id_upnik=tabelaglavniceobresti.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokodvstroskivlozitve
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavka='2' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelaodvstroski on paketi.id_upnik=tabelaodvstroski.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokodvstroskivlozitveobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavka='2' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelaodvstroskiobresti on paketi.id_upnik=tabelaodvstroskiobresti.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as poksodnataksavlozitve
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavka='3' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelasodnataksavlozitve on paketi.id_upnik=tabelasodnataksavlozitve.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as poksodnataksavlozitveobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavka='3' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelasodnataksavlozitveobresti on paketi.id_upnik=tabelasodnataksavlozitveobresti.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokdodatnasodnataksa
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='1' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabeladodatnasodnataksa on paketi.id_upnik=tabeladodatnasodnataksa.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokdodatnasodnataksaobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='1' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabeladodatnasodnataksaobresti on paketi.id_upnik=tabeladodatnasodnataksaobresti.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokdodatniodvstroski
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='2' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabeladodatniodvstroski on paketi.id_upnik=tabeladodatniodvstroski.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokdodatniodvstroskiobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='2' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabeladodatniodvstroskiobresti on paketi.id_upnik=tabeladodatniodvstroskiobresti.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokstroskiizvrsitelja
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='3' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelastroskiizvrsitelja on paketi.id_upnik=tabelastroskiizvrsitelja.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokstroskiizvrsiteljaobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='3' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelastroskiizvrsiteljaobresti on paketi.id_upnik=tabelastroskiizvrsiteljaobresti.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokpravdnistroski
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='4' and obresti=false
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelapravdnistroski on paketi.id_upnik=tabelapravdnistroski.id_upnik
left join (select paketi.id_upnik, sum(specifikacije_postavke.placilo) as pokpravdnistroskiobresti
from specifikacije_postavke, specifikacije1, dolzniki_terjatve, paketi
where specifikacije1.idizracun=specifikacije_postavke.idizracun and dolzniki_terjatve.referenca=specifikacije1.referenca and paketi.id_paket=dolzniki_terjatve.id_paket
and postavkastroski='4' and obresti=true
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datumplacila <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik)
as tabelapravdnistroskiobresti on paketi.id_upnik=tabelapravdnistroskiobresti.id_upnik
where upniki.id_upnik in (131,141,1009, 1000)
uj5u.com熱心網友回復:
我們可以在 WITH 部分定義引數并在子查詢中使用它們
簡單的例子
with
params as (select 1 param_from, 1 param_to)
select header_id, count(*) from position, params
where position.header_id between param_from and param_to
group by header_id
可以玩的 DB Fiddle
重構后查詢
with
params as (select '2018-06-01'::timestamp p_datum_vlozitve_from, '2019-01-01'::timestamp p_datum_vlozitve_to)
select distinct on (upniki.naziv)
upniki.naziv,
b.stevilo,
....... original query .....
并且可以使用來自引數查詢的值來代替常量。
例如在tabledodatnataksa子查詢中
select paketi.id_upnik, sum(znesek) as dodatna_taksa
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and tip_stroskov='1'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik
添加param到表格并使用p_datum_vlozitve_from代替2018-06-01和p_datum_vlozitve_to代替2019-01-01
select paketi.id_upnik, sum(znesek) as dodatna_taksa
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi, param
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and tip_stroskov='1'
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >=p_datum_vlozitve_from and dolzniki_terjatve.datum_vlozitve < p_datum_vlozitve_to
and datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik
只是小記
在 JOIN 子查詢中有很多重復的代碼..例如
tabledodatnataksa,tabledodatniodv,tablestroskiizv,tablepravdni
可以很容易地重構為一個子查詢
select paketi.id_upnik,
sum(znesek) filter(where tip_stroskov='1') as dodatna_taksa,
sum(znesek) filter(where tip_stroskov='2') as dodatni_odvetniski,
coalesce(sum(znesek) filter(where tip_stroskov='3'),0) as stroski_izvrsitelja,
sum(znesek) filter(where tip_stroskov='4') as pravdni
from dolzniki_dodatni_stroski, dolzniki_terjatve, paketi
where dolzniki_terjatve.referenca=dolzniki_dodatni_stroski.referenca and dolzniki_terjatve.id_paket=paketi.id_paket
and dolzniki_terjatve.glavnica > 0 and dolzniki_terjatve.glavnica < 500
and dolzniki_terjatve.datum_vlozitve >='2018-06-01' and dolzniki_terjatve.datum_vlozitve < '2019-01-01'
and datum <= date(dolzniki_terjatve.datum_vlozitve) interval '7 month'
group by paketi.id_upnik
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/495859.html
標籤:PostgreSQL 变量 子查询
上一篇:Kotlin中的NumberFormatException(IntelliJ)
下一篇:函式內的var變數重新分配
