UNION演算子を使用すると、1つのクエリで結果を取得できます。大規模なセットで費用対効果が高くなることはありませんが、機能します。
- すべてのクエリで、同じデータ型の同じ数の列を選択する必要があります。
- クエリに一意の列がある場合はnullを選択できます
- データの出所を示す文字列を選択するのも便利です
- 結果セットは最初のクエリの列の名前のみを使用します
-
順序付けは、個々のクエリではなく、結果セット全体に適用されます
select count(*)AS R_COUNT、'OSABA' AS SOURCE、subjekt.nazev、null、null、null、null
osoba、subjektから
ここで、osoba.ID_PATRI_DO =subjekt.ID
subjekt.nazevによるグループ化
ユニオン
count(*)、'ZADAVACI_POSTUP'、subjekt.nazev、null、null、null、null
を選択しますZADAVACI_POSTUP、subjektから
ここで、ZADAVACI_POSTUP.id_zadavatel =subjekt.ID
subjekt.nazevによるグループ化
ユニオン
NULL、'Aplikacni_log'、sb.nazev、lg.create_uzivatel、lg.create_cas、null、nullを選択します
Aplikacni_loglgからzp.id=lg.id_zp
でzadavaci_postupzpに参加しますsb.id =zp.id_zadavatel
でsubjektsbに参加しますここで、lg.create_cas> to_date('08 .11.2014'、' DD.MM.YYYY')
ユニオン
select count(*)pocet、'SUBQUERY'、do_dne_včetně、nazev_organizace、max(trunc(sysdate)-6)ode_dne_včetně、max(trunc(sysdate))
from(
to_char(t.popis)popis_typu、subj.nazev nazev_organizace、
を選択しますu.username、u.nazev、a.datumzapisauditu
、to_char(a.datumzapisauditu、'DD.MM.YYYY')datum、a.id
d $cauditaから
u.id =a.id_uzivatel
でcuzivateluに参加しますu.id_osoba_bridge =os.id
でosobaosに参加しますsubj.id =os.id_patri_do
でt$subjektsubjに参加しますt.id =a.id_audittyp
でd$caudittyptを左結合しますここで、trunc(sysdate)-7とtrunc(sysdate)の間のdatumzapisauditu
a.datumzapisauditu descによる注文)
;