# Access 2002 - Bedingungen mit IIF



## shutdown (2. Februar 2006)

Hallo an alle!

Ich habe ein Problem mit IIF und komme einfach nicht mehr weiter.


```
SELECT Inhaltsverzeichnis.Priorität as test, IIF(test=0,"99",test) AS new_order, *
FROM Inhaltsverzeichnis;
```

Ich habe an dieser Abfrage jetzt schon fast alles rumprobiert, was mir eingefallen ist, aber IIF produziert mir einfach nur eine leere Spalte.

Kann mir da jemand helfen?

Besten Dank im Voraus!
Gruß shutdown


----------



## Player1005 (2. Februar 2006)

versuchs mal so: IIF(test=0,99,test)
bzw so: IIF(test=0,'99',test)


----------



## shutdown (2. Februar 2006)

das meinte ich mit "rumprobiert" 

mit anderen Worten - das klappt leider nicht :-(


----------



## Player1005 (3. Februar 2006)

was ist test denn fuer ein datentyp? ist das ein string oder number?


----------



## shutdown (3. Februar 2006)

test ist als Zahl mit double definiert.

Von daher war ich der Meinung, dass es so funktionieren müsste:


```
SELECT Inhaltsverzeichnis.Priorität AS test, IIf(test=0,99,test) AS bnet_order, *
FROM Inhaltsverzeichnis;
```

Tut es aber leider nicht.

Was funktioniert, ist sowas:


```
IIf(Inhaltsverzeichnis.Nr > 700, 'größer', 'kleiner') as test2
```

Aber mit dem kann ich leider nix anfangen.


gruß shutdown


----------



## Player1005 (3. Februar 2006)

Access hat manchmal probleme mit den aliasen. versuch es mal damit:

```
Inhaltsverzeichnis.Priorität AS test, IIf(Inhaltsverzeichnis.Priorität=0,99,Inhaltsverzeichnis.Priorität)
```


----------



## shutdown (3. Februar 2006)

hatte ich auch schon probiert - klappt einfach net.

Es liegt übrigens auch nicht am ä in Priorität - das habe ich auch schon ausgetauscht.

Der einzige Unterschied zwischen Nr und Priorität ist, dass Nr ein Autowert mit Long Integer ist, und Priorität Zahl als double.


----------



## Player1005 (3. Februar 2006)

hmmm...

ist zwar nicht gerade die eleganteste loesung, aber vielleicht koenntest du deine prioritaeten ja auch als integers speichern. 
oder hast du etwa sowas wie 0,93 prios ;-) ?


----------



## shutdown (3. Februar 2006)

Ich hab das mal in meiner Testumgebung versucht, das hat aber leider auch keinen Effekt.

Grundsätzlich ist die Prioriät mit Komma-Stellen schon sinnvoll, da anhand der Tabelle eine Baumstruktur erzeugt wird.

Und wenn ich dann so etwas habe:
1) a
2) b
3) c

Dann ist es einfacher einzupflegen zu sagen
1) a
1,5) c
2) b

als wenn du dann bei großen Bäumen alles verschieben müsstest.


----------

