Announcement

Collapse
No announcement yet.

Problem mit Union select

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit Union select

    Hallo,

    folgendes Statement gibt nur die Daten der ersten Abfrage zurück, aber nicht der Zweiten:

    select a.carrier_code, a.flight_no, a.origin, a.dept_time, a.destination, a.arr_time, a.flight_date,
    a.aircraft_type, a.booking_class, a.service_class, a.occ_first, a.occ_business, a.occ_economy, a.fare_basis, a.rt_fare, a.tax, a.surcharges, a.fare_total
    from favailability a, main_related_flight b
    where a.flight_leg_id = b.flight_leg_id_1
    and a.origin = 'AAL'
    and a.service_class = 'Economy'
    and a.flight_date = '09.02.2009'
    union
    select d.carrier_code, d.flight_no, d.origin, d.dept_time, d.destination, d.arr_time, d.flight_date,
    d.aircraft_type, d.booking_class, d.service_class, d.occ_first, d.occ_business, d.occ_economy, d.fare_basis, d.rt_fare, d.tax, d.surcharges, d.fare_total
    from favailability d, main_related_flight e
    where d.flight_leg_id = e.flight_leg_id_2
    and d.destination = 'CPH'
    and d.flight_date = '16.02.2009'
    order by a.flight_date;

    Also nur der Hinflug, aber nicht der Rückflug.

    Vielleicht sehen die Experten das Problem auf den ersten Blick?

    Danke!

  • #2
    Vielleicht sehen die Experten das Problem auf den ersten Blick?
    Zwei Möglichkeiten:
    • Beide Statements haben die identischen Daten und diese werden über das UNION eingedampft. Lösung: UNION ALL verwenden.

    • Das zweite Statement hat für die aktuellen Bedingungen keine Daten.


    Dim
    Zitat Tom Kyte:
    I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

    Comment


    • #3
      Auch Union All liefert keine Daten zurück. Es sind aber Daten in der Tabelle.

      Comment


      • #4
        Originally posted by Rambler09 View Post
        Auch Union All liefert keine Daten zurück. Es sind aber Daten in der Tabelle.
        Liefert den das 2. Statement alleine Daten zurück ?


        Gruss

        Comment


        • #5
          Das Daten in der Tabelle sind mag ja sein, aber auch welche die auf deine Bedingungen passen? Anders gefragt: Bekommst Du ein Ergebnis wenn Du nur das zweite SQL ausführst?

          Dim
          Zitat Tom Kyte:
          I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

          Comment


          • #6
            Bedingung der 2.Abfrage war falsch:

            falsch: d.destination
            richtig: d.origin

            Alle Daten werden zurückgeliefert.

            Danke trotzdem für die Hilfe!

            Comment

            Working...
            X