Mailinglisten-Archive |
Hallo Liste, bis jetzt habe ich noch keine Lösung zu folgendem Problem bekommen, vielleicht geht das gar nicht. Oder doch? Ich habe in einer Tabelle ein Feld, das Statusbits enthält, wie sie beispielsweise chmod verwendet (1 = ausführen, 2 = schreiben und 4 = lesen; zusammen ergibt beispielsweise 7: lesen + schreiben + ausführen) Ob ein spezielles Bit gesetzt ist, kann ich ja per "&" testen, kommt bei meinem Beispiel bei 7 & 4 = 4 heraus, ist das Bit für lesen gesetzt. Genauso läuft es in meiner Datenbank ab, aber halt mit anderen Statuscodes. Jetzt möchte ich aber nach Statusbits sortieren, geht das in einer Abfrage? Bis jetzt habe ich für jedes Bit eine Abfrage, z.B. SELECT * FROM tabelle WHERE 7 & 4 = 4; Das ist aber unübersichtlich und umständlich. Gibt es eine Möglichkeit wie: SELECT * FROM tabelle ORDER BY (bit1_feld & 4 = 4), (bit1_feld & 2 = 2); Dass diese Abfrage nicht gehen kann ist klar, aber das Prinzip ist klar, denke ich. Hat jemand einen Lösungsvorschlag für mich? Gruss, Ithamar Garbe --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive