Suche in SET-Spalten

Suche in SET-Spalten

am 03.11.2007 17:22:04 von Roland Smiderkal

Hallo,

wie sucht man, ob in einer Set-Spalte ein bestimmter Wert gesetzt ist?

Beispiel ich habe eine Spalte box_medium vom Typ SET('B','M') und
möchte alle Zeilen finden, wo 'B' gesetzt ist.

SELECT * FROM medium WHERE box_medium ...?

Roland

Re: Suche in SET-Spalten

am 03.11.2007 17:29:48 von Sebastian Suchanek

Roland Smiderkal schrieb:

> Beispiel ich habe eine Spalte box_medium vom Typ SET('B','M') und
> möchte alle Zeilen finden, wo 'B' gesetzt ist.
>
> SELECT * FROM medium WHERE box_medium ...?

.... LIKE '%B%'


HTH,

Sebastian

Re: Suche in SET-Spalten

am 03.11.2007 18:31:12 von Peter Schleif

Sebastian Suchanek schrieb:
>
> .... LIKE '%B%'

Folgendes ist wohl intuitiver, da es sich schließlich um eine
SET-Spalte handelt:

... WHERE FIND_IN_SET( box_medium, 'B' ) > 0

Peter

Re: Suche in SET-Spalten

am 03.11.2007 23:11:16 von Roland Smiderkal

Peter Schleif schrieb:
>>
>> .... LIKE '%B%'
>
>Folgendes ist wohl intuitiver, da es sich schließlich um eine
>SET-Spalte handelt:
>
> ... WHERE FIND_IN_SET( box_medium, 'B' ) > 0

Nicht nur das, es ist auch sicherer. Die Lösung mit LIKE ist mir
selber eingefallen, war mir aber zu unsicher sollten später weitere
Optionen zur SET-Spalte dazukommen (die eventuell ein 'B' enthalten).

BTW:
... WHERE FIND_IN_SET( 'B', box_medium ) > 0

Danke
Roland