Ich versuche, eine grundlegende Berechnung in MS Access SQL zu tun.Verwendung von Switch in MS Access SQL
Ich habe eine Tabelle Weekly
, mit wöchentlichen Statistiken für jeden Benutzer genannt, enthält die folgenden Spalten: User
, Fail
, Pass
, Approve
und Reject
(und einige unwichtige id und Datumswerte).
Wenn ich die folgende Abfrage ausführen:
SELECT User, Switch(Approve>0,Pass/Approve, Approve = 0, Null) AS passed_approved_ratio, Switch(Reject>0,Fail/Reject, Reject= 0, Null) AS fail_reject_ratio
FROM Weekly
Ich erhalte einen #ERROR
Wert in mehreren resultierenden Reihen.
Ich habe versucht, es mit und ohne die zweite Bedingung + Wert im Switch
funciton (Switch(Approve>0, Pass/Approve)
,
Ausfallen, Pass, genehmigen und alle ablehnen Nicht-Null-Zahlenwert in der Wochentabelle haben, also warum nicht, dass sie auf einen Nullwert lösen, wenn genehmigen oder Ablehnen sind 0
Können die Werte <0 sein? Versuchen Sie, <= 0 als zweites Argument zu genehmigen. – dwo
Es gibt keine negativen Werte in der Tabelle. In jedem Fall sollte ein negativer Wert zu Null führen, da keine Bedingungen erfüllt sind (gemäß der Definition der Switch-Funktion) – Jono