Announcement

Collapse
No announcement yet.

Erweiterung eines bestehenden Statemens

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

  • Erweiterung eines bestehenden Statemens

    Hi zusammen,

    ich arbeite gerade mit einem Statement, welches auch wie gewünscht funktioniert:


    select

    das.xyz_id,
    das.bze_id,
    calls.ab as letzter_abCall,
    calls.ac as letzter_acCall,
    calls.ad as letzter_adCall,
    das.day as DA
    from

    ......

    (hier zwischen kommen noch weitere bedingungen und aufhören tut das statement wie folgt:

    from
    calls
    where
    call_result = 'Reached'
    AND call_duration > 29
    and created_at > '2018-12-20'
    and call_type in ('ab', 'ac','ad')
    group by
    xyz_id
    ....

    In der Tabelle gibt es unter call_type auch Einträge mit (Null) - diese würde ich auch gerne entsprechend auflisten. Allerdings weiß ich nicht, wie ich hierzu vorgehen soll. Weiß jemand, wie man diese in die entsprechende Abfrage-Logik bekommen würde?

    Besten Dank für euren support.

    LG Felix


  • #2
    and call_type in ('ab', 'ac','ad')
    erweitern zu
    Code:
    and ((call_type in ('ab', 'ac','ad')) or  (call_type is null))
    Da ein Null Wert nichts ist, kann er nicht mit normalen Operatoren verglichen werden. Dafür gibt es is null oder auch is not null.

    Dein Statement oben, der Ausschnitt ist soweit erkennbar nicht ok.
    Das Group by muss raus. Ich sehe im Rest des Statements nichts, was eines begründet. Es funktioniert evtl nur zufällig oder vielleicht auch gar nicht, Du bemerkst nur nicht die Ausgabe falscher Daten.

    Comment


    • #3
      Hi defo2,

      danke. Ich habe den mittleren Teil des Statements weggelassen der besseren Übersicht halber. Deinen Vorschlag habe ich schon eingebaut, allerdings frage ich mich immer noch, was ich in dem ersten Abschnitt machen muss:

      calls.ab as letzter_abCall,
      calls.ac as letzter_acCall,
      calls.ad as letzter_adCall,
      calls.null???

      Das funkioniert leider nicht :-) Weißt du das?

      LG Felix

      Comment


      • #4
        Ich verstehe die Frage nicht. Was ist der erste Teil? Und was musst Du machen?
        Vielleicht das Feld aufführen, damit es ausgegeben wird? Oder ist es nur als Filter gedacht, ohne Ausgabe?
        Was Du machen musst, kommt auf die Anforderung an, die kenne ich nicht.

        Comment


        • #5
          Im aktuellen Statement habe ich drei Spalten:

          calls.ab as letzter_abCall,
          calls.ac as letzter_acCall,
          calls.ad as letzter_adCall,

          und würde gerne eine zusätzliche Spalte (die mit dem Null-Werten) hinzufügen. Ich weiß jedoch nicht, wie ich dies ergänzen muss:

          calls.ab as letzter_abCall,
          calls.ac as letzter_acCall,
          calls.ad as letzter_adCall,
          Was muss hier für ein Befehl hin?

          Für die anderen habe ich Bezeichnungen (ab, ac und ad) und kann das einbauen. Bei Null weiß ich nicht, was ich schreiben muss.

          LG

          Comment


          • #6
            Dann muss der calltype als Spalte ausgegeben werden
            Christian

            Comment


            • #7
              ja, das möchte ich ja. Aber eben als spalte mit Nullwert:

              calls.ab as letzter_abCall,
              calls.ac as letzter_acCall,
              calls.ad as letzter_adCall,
              calls.null as letzer_afCall (funktioniert ja leider nicht)

              ...

              Comment


              • #8
                Entweder
                calls.ab as letzter_abCall,
                calls.ac as letzter_acCall,
                calls.ad as letzter_adCall,
                calls.call_type as letzer_afCall
                oder
                wenn du in dieser Spalte nur eine Ausgabe haben willst, wenn call_type null ist
                calls.ab as letzter_abCall,
                calls.ac as letzter_acCall,
                calls.ad as letzter_adCall,
                CASE
                WHEN call_type is null THEN null
                END as letzer_afCall
                Christian

                Comment


                • #9
                  Kann es sein, dass die Datenquelle "Call" bereits ein View ist, der sie Spalten ab, ac, ad generiert?
                  Wenn ja müsstest Du dann mal genauer schreiben, was Du möchtest. Der Spalte, die ausgegeben wird ist es egal, ob sie NULL enthällt und auch, wie sie per Alias benannt wird.
                  Mit anderen Worten, ich verstehe Dein Problem noch immer nicht.

                  Comment


                  • #10
                    Hi Defo2 und Christian,

                    sorry erstmal für meine im Nachhinein schlechte Erklärung der Ausgangssituation. Nur die Hälfte des Statements zu posten war sicherlich selten dämlich :-) Mit Hilfe eurer beiden Information und einmal drüber schlafen habe ich das Ergebnis so hinbekommen wie gewünscht.

                    Aus diesem Grund vielen vielen Dank euch zwei!!!!

                    LG Felix

                    Comment

                    Working...
                    X