0

cnt mit zwei Bedingungen

Hallo,

leider hat mich die Recherche im Forum nicht weitergebracht, daher nun meine Frage.

Ich möchte aus einer Tabelle namens "Vertragspositionen" die Anzahl ausgeben lassen, derjenigen Positionen, die 1. zu einem bestimmten Vertrag aus der Tabelle "Verträge" gehört und zweitens eine bestimmte Produktart aufweist. Das Auswahlfeld hat den Wert 1 für die gesuchte Produktart. Die Produktart ist in der Tabelle "Produkte" hinterlegt, welche mit der Tabelle "Vertragspositionen" verknüpft ist. Er gibt mir bei der Abfrage immer den falschen Wert 0 aus. Lasse ich die Bedingungen einzeln durchlaufen geht es. Wieso mag er die beiden Bedingungen bloß nicht in Kombination?

 

GEHT NICHT:
New.(Anzahl := cnt(select Vertragspositionen where Produkte.Produktart = 1 and 'Verträge' = my))

GEHT:
New.(Anzahl := cnt(select Vertragspositionen where Produkte.Produktart = 1)

GEHT:
New.(Anzahl := cnt(select Vertragspositionen where 'Verträge' = my))

2 Antworten

null
    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Stefanie, was ist die Variable my? Wenn es let my:=this, dann zählst du die Datensätze in deiner Untertabelle. In diesem Fall ist select überflüssig :

    New.(Anzahl := cnt(Vertragspositionen [Produkte.Produktart = 1])
    Leo

    • marie_mlb
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Super, vielen Dank! Jetzt geht es!