Announcement

Collapse
No announcement yet.

COUNT Funktion macht mich verrückt

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

  • COUNT Funktion macht mich verrückt

    Ich versuche Daten aus einem Datenbank für einen CRM System zu filtern und daraus einen Report zu erstellen.

    Zur Info: Datenbank von einem Privatklinik, es sind Patientenberater, die Patienten betreuen. Jeder Patient wird nach seiner Krankheit behandelt , d.h. es sind auch verschiedene Behandlungsarten.

    meien gewünschte Daten sind folgendes:

    Anzahl die Bahndlungen die jeder Patientenberater bucht in einem Zeitintervall.

    XXX
    Hier ist meine Query die listet alle Daten richtig!

    XXXX

    Wenn ich diese Daten anders darstellen will und zwar die Behandlungen zählen will anhand der Count funktion dann sieht das Ergebniss total falsch aus :

    die Query:
    XXXXX

    Result:
    XXXX

    Wie man Sieht, die Anzahl ist falsch und ich kann nicht sehen woran es liegt!

    Für jeden Vorschlag bedanke ich mich ganz herzlich im Voraus
    Zuletzt editiert von Xcell_Omar; 02.08.2010, 15:46. Reason: Datenschutz!!

  • #2
    A) Formatierung von SQL in Beiträgen

    und wie wärs, wenn beides mal dieselbe WHERE-Bedingung zum Einsatz käme?

    Comment


    • #3
      Also die WHERE Bedingung in den beiden Abfragen ist dieselbe, der einzige unterschied ist. bei der erste Abfrage werden die Daten einfach aufgelistet :


      und bei der zweite sollen die Behandlungsarten zusammengefasst werden und deren Records einfach gezählt! das funktioniert leider nicht! das was ich nicht verstehe


      Where Bedingung zweite Query:
      Zuletzt editiert von Xcell_Omar; 02.08.2010, 15:46.

      Comment


      • #4
        Hallo,

        in der ersten Abfrage, die 'alle Daten richtig listet', ist bereits ein Group By enthalten, hier werden also schon mal gleiche Sätze zusammengefaßt.

        Ohne das GROUP BY wird das Abfrageergebnis bestimmt besser zur Zählabfrage passen (oder umgekehrt).

        Viel Erfolg!

        Tino
        Ich habs gleich!
        ... sagte der Programmierer.

        Comment


        • #5
          Ja das könnte natürlich sein , dass die GROUP BY dieses verursacht...!

          nun um zu zählen benutze ich die Funktion COUNT() und dies ist eine Aggregat Funktion und was für Agg. Fukntion soll ich für die restliche Spalten zuweisen?

          weil wenn auf eine Spalte eine Agg. Fukntion angewendet wird, soll es auch auf die anderen ansonsten meckert das System!

          Comment


          • #6
            Ich denke, die erste Abfrage ist nur zum Vergleich / zur Prüfung der Daten - richtig?
            Dann würde ich dort das Group By ganz weglassen. Solange man kein Aggregat in der SELECT - Liste hat ist das nicht notwendig und sollte auch keine Fehler bringen.

            Alternativ muss in beiden Abfragen nach exakt den gleichen Kriterien (also einheitlich mit oder ohne die Xcell_patientnumber) gruppiert werden.

            Viel Erfolg
            Tino
            Ich habs gleich!
            ... sagte der Programmierer.

            Comment


            • #7
              Also vielen Dank...

              Jetzt bin ich mind. dadrauf gekommen, woher das System diese Daten hat( es waren Duplikaten).

              Jetzt um die Frage besser darzustellen.. hänge ich hiermit ein Foto wo die Query mit der Resultat zu sehen ist!

              Könnt ihr bitte Vorschläge geben wie ich die Behandlungsmethoden Zählen kann für jeden jeweiligen Patientberater wie hier z.B für den Patientenberater der Raid Maree Heisst!


              Ich freue mich für jeden Eintrag!
              Attached Files

              Comment


              • #8
                ich sehe keine Gleichheit bei
                [HIGHLIGHT="SQL"]FilteredAccount.owneridname LIKE N'%Maree%') AND [/HIGHLIGHT]
                und
                [HIGHLIGHT="SQL"](FilteredAccount.owneridname = N'Raid Maree') [/HIGHLIGHT]

                ersteres listet alle mit Maree im Namen, zweites nur N'Raid Maree'...

                2) Versuch mal COUNT (DISTINCT patientnumber) anstatt COUNT (*)

                Comment


                • #9
                  WOW..Es hat geklappt...!!!

                  Echt vielen Vielen Dank....!

                  Ich bin total Froh dass es funktioniert hat!



                  Es tut mir leid wenn ich diesen Eintrag lösche.. Ich muss es aber löschen da es um Datenschutz geht.. !

                  Comment


                  • #10
                    Gelbe Karte!

                    Hallo,
                    Originally posted by Xcell_Omar View Post
                    ....Es tut mir leid wenn ich diesen Eintrag lösche.. Ich muss es aber löschen da es um Datenschutz geht.. !
                    Was ist denn das fürn Scheiß ... ! Das hättest du dir mal vorher überlegen sollen und deine Postings entsprechend anonymisieren müssen. Aber hier die Hilfe abgreifen und anschließend relevante Teile rauslöschen bzw. rauseditieren ist nicht die feine Art! Wenn das jeder machen würde, dann hätten wir hier nur noch sinnenstellte Threads und die Helfer würden alle als Deppen dastehen, da sie offensichtlich nur zusammenhanglose Antworten geben.

                    Deshalb: Gelbe Karte! Bitte beim nächsten mal vorher überlegen was ggfs. nicht veröffentlicht werden darf und es entsprechend anonymisieren!

                    Gruß Falk
                    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

                    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

                    Comment


                    • #11
                      Danke @Falk, das hab' ich auch so gedacht ...
                      Ich habs gleich!
                      ... sagte der Programmierer.

                      Comment

                      Working...
                      X