sql >> データベース >  >> RDS >> Oracle

Oracle-1つの結果でより多くのクエリ

    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による注文)

      ;




    1. PDOステートメントへのパラメーターのバインドに問題がある

    2. Oracleでのカンマ区切り値の分割

    3. MySQLでWebサイトを作成する

    4. AndroidとOracleデータベースを接続するための最良の方法は何ですか?