Abfrage Rechnen Wenn Funktion?
Moderator: Moderatoren
-
- **
- Beiträge: 27
- Registriert: Di, 19.01.2016 17:41
Abfrage Rechnen Wenn Funktion?
Hallo Ihr alle,
kann ich in einer Abfrage die mir was ausrechnen soll eine Wenn funktion einbauen?
Also zum Bsp. Select Wenn "Summe" < als 5 dann *5 wenn "Summe" >5 <7 dann *7.5 wenn "Summe" >7 <12 dann * 10 wenn "Summe" >12 * 12.5
Ich hoffe Ihr versteht was ich meine.
Gruß
Vanessa
kann ich in einer Abfrage die mir was ausrechnen soll eine Wenn funktion einbauen?
Also zum Bsp. Select Wenn "Summe" < als 5 dann *5 wenn "Summe" >5 <7 dann *7.5 wenn "Summe" >7 <12 dann * 10 wenn "Summe" >12 * 12.5
Ich hoffe Ihr versteht was ich meine.
Gruß
Vanessa
Re: Abfrage Rechnen Wenn Funktion?
Hallo Vanessa,
versuche es einmal mit CASE WHEN ...
Aus dem Handbuch:
Gruß
Robert
versuche es einmal mit CASE WHEN ...
Aus dem Handbuch:
CASE WHEN expr1 THEN v1[WHEN expr2 THEN v2] [ELSE v4] END
Wenn Du rechnen willst, dann dürfen die Zahlen aber nicht in Hochkommata stehen.Wenn expr1 wahr ist wird v1 zurückgegeben. [Optional können weitere Fälle angegeben werden] Sonst wird v4 wiedergegeben oder
NULL, wenn kein ELSE formuliert ist.
CASE WHEN DAYOFWEEK("Datum")=1 THEN 'Sonntag' WHEN DAYOFWEEK("Datum")=2 THEN 'Montag' ... END
könnte per SQL den Tagesnamen ausgeben, der sonst in der Funktion nur in Englisch verfügbar ist.
Gruß
Robert
-
- **
- Beiträge: 27
- Registriert: Di, 19.01.2016 17:41
Re: Abfrage Rechnen Wenn Funktion?
Hi Robert,
Danke erst mal für deine Hilfe.
Ich habe es ausprobiert. Und zwar so :
SELECT Case When ("Bundle") <5 then ("Bundle"*5) when ("Bundle") >5 then ("Bundle"*7.5) when ("Bundle") >7 then ("Bundle"*10) when ("Bundle") >13 then ("Bundle"*12.5) end FROM "Summe "
Bundle enthält den wert gerade von 15 als lösung rechnet er mir 112,5 aus. Ich finde den fehler nicht. Du vielleicht?
Gruß Vanessa
Danke erst mal für deine Hilfe.
Ich habe es ausprobiert. Und zwar so :
SELECT Case When ("Bundle") <5 then ("Bundle"*5) when ("Bundle") >5 then ("Bundle"*7.5) when ("Bundle") >7 then ("Bundle"*10) when ("Bundle") >13 then ("Bundle"*12.5) end FROM "Summe "
Bundle enthält den wert gerade von 15 als lösung rechnet er mir 112,5 aus. Ich finde den fehler nicht. Du vielleicht?
Gruß Vanessa
-
- **
- Beiträge: 27
- Registriert: Di, 19.01.2016 17:41
Re: Abfrage Rechnen Wenn Funktion?
Juhuuuu hab den fehler gefunden
So ist es richtig geschrieben.
SELECT Case When ("Bundle") <5 then ("Bundle"*5) when ("Bundle") <7 then ("Bundle"*7.5) when ("Bundle") <12 then ("Bundle"*10) when ("Bundle") >13 then ("Bundle"*12.5) end FROM "Summe "
Danke für deinen grund gedanke.
So ist es richtig geschrieben.
SELECT Case When ("Bundle") <5 then ("Bundle"*5) when ("Bundle") <7 then ("Bundle"*7.5) when ("Bundle") <12 then ("Bundle"*10) when ("Bundle") >13 then ("Bundle"*12.5) end FROM "Summe "
Danke für deinen grund gedanke.
Re: Abfrage Rechnen Wenn Funktion?
Hallo Vanessa,
Also: die letzte "when" bedingung ersetzen durch :
Dann passt es;)
Generell gilt: Wenn-Bedingugen werden von vorne nach hinten abgearbeitet und die erste passende Bedingung wird ausgeführt;)
Viele Grüße
Tom
nicht ganz;) - der Fall, dass "Bundle" genau 12 ist, wird nicht berücksichtigt!So ist es richtig geschrieben.
Also: die letzte "when" bedingung ersetzen durch :
Code: Alles auswählen
... else ("Bundle"*12.5) end....
Generell gilt: Wenn-Bedingugen werden von vorne nach hinten abgearbeitet und die erste passende Bedingung wird ausgeführt;)
Viele Grüße
Tom
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
-
- **
- Beiträge: 27
- Registriert: Di, 19.01.2016 17:41
Re: Abfrage Rechnen Wenn Funktion?
Guten Morgen Tom,
habe ich gemacht und jetzt kommt immer Syntax fehler. jetzt will er nicht mehr.
gruß Vanessa
habe ich gemacht und jetzt kommt immer Syntax fehler. jetzt will er nicht mehr.
Code: Alles auswählen
SELECT CASE WHEN ( "Bundle" ) < 5 THEN ( "Bundle" * 5 ) WHEN ( "Bundle" ) < 7 THEN ( "Bundle" * 7.5 ) WHEN ( "Bundle" ) < 12 THEN ( "Bundle" * 10 ) else ( "Bundle" ) > 13 then ( "Bundle" * 12.5 ) END AS "Provi Bundle" FROM "Summe "
Re: Abfrage Rechnen Wenn Funktion?
Hallo Vanessa,
korrekt lesen hilft;))
Nicht:
Sondern nur:
VG
Tom
korrekt lesen hilft;))
Nicht:
Code: Alles auswählen
... else ( "Bundle" ) > 13 then ( "Bundle" * 12.5 ) END .....
Code: Alles auswählen
... ELSE ( "Bundle" * 12.5 ) END
Tom
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
-
- **
- Beiträge: 27
- Registriert: Di, 19.01.2016 17:41
Re: Abfrage Rechnen Wenn Funktion?
Danke Tom,
ja wer lesen kann ist klar im Vorteil.
jetzt habe ich noch mal ne kurze Frage da zu. Wie kann ich die Wenn Abfrage schreiben wenn er Rechnen soll.
also
1-2 = 0
ab 3 -8 = 5
ab 9 = 10
er soll auch immer egal wie viel zähler es sind immer bei 3-8 5 rechnen.
z.b 12 punkte.
punkte 1-2 = 0
Punkte 3-8= 30
ab 9 = 40
Insgesamt 70
gruß Vanessa
ja wer lesen kann ist klar im Vorteil.
jetzt habe ich noch mal ne kurze Frage da zu. Wie kann ich die Wenn Abfrage schreiben wenn er Rechnen soll.
also
1-2 = 0
ab 3 -8 = 5
ab 9 = 10
er soll auch immer egal wie viel zähler es sind immer bei 3-8 5 rechnen.
z.b 12 punkte.
punkte 1-2 = 0
Punkte 3-8= 30
ab 9 = 40
Insgesamt 70
gruß Vanessa