Announcement

Collapse
No announcement yet.

Kann mir jemand bei ner Abfrage helfen?

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

  • Kann mir jemand bei ner Abfrage helfen?

    Ich lasse den Inhalt einer Tabelle in einer Webform(asp.net) anzeigen und kann über Felder in der Form Filter erstellen, sodass mir dann nur noch die gewünschten Daten gezeigt werden. Da alle Daten aus der selben Tabelle kommen ist das auch kein problem. Bei mehreren Suchkriterien, werden diese einfach mit AND zusammengesetzt.
    Nun ist jemand auf die Idee gekommen, er möchte noch nach einem Kriterium fildern können, das aber leider in einer anderen Tabelle liegt.

    Tabelle 1 hat also zb.:

    Kundennr | Name | Vorname | Strasse | PLZ | Ort | und noch viele mehr

    Tabelle 2 hat:

    Tab2Id | Kundennr| Kontaktart | Datum

    Kontaktarten gibt es 3 verschiedene (1,2,3) und das Filterkriterium ist, wie oft Kontaktart 2 zutrifft. Dh. man kann auswählen zwischen kein mal, 1 mal, 2 mal, ... , 10 mal, mehr als 10 mal.

    Ich hab mir überlegt, das beste ist, ich mach das über einen Count und zähle somit die Zeile Kontaktart zusammen, Gruppiert nach der Kundennr.
    Das sieht dann ja ungefähr so aus:

    SELECT COUNT(Kontaktart) FROM Tabelle2 WHERE Kontaktart = 2 GROUP BY Kundennr

    Das ganze dann geklammert und in die AND-Folge eingefügt. Klappt natürlich so nicht, sonst würd ich hier nicht fragen

    Hat vllt jemand verstanden was ich machen will und kann mir nen Tipp geben, was ich machen muss?

  • #2
    Hallo Andreas,

    wenn ich dich richtig verstanden habe, dann müßte eigentlich sowas gehen:
    [highlight=sql]
    ... AND exists (
    SELECT 'X' FROM Tabelle2
    WHERE Kontaktart = 2
    GROUP BY Kundennr
    HAVING COUNT(Kontaktart) = nMal
    )
    [/highlight]

    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


    • #3
      super, danke, das geht

      Comment

      Working...
      X