Hi Christian, ich habe auf das ^ hin im Internet auch noch folgende gefunden:
& bitweise und (zwei Operanden) | bitweise oder (zwei Operanden) ^ bitweise ausschlie�lich oder (zwei Operanden) ~ bitweise nicht (ein Operand) Eine Meldung k�nnte ja f�r alle Benutzer, nur f�r die Gruppe 1 freigeschaltet sein, ein User kann auch der Gruppe 1, 2 und 3 angeh�ren. Ich habe damit jetzt folgende Beispiel-Abfrage formuliert: SELECT COUNT(*) FROM tbl_News WHERE (lngLevel & 8 > 0) OR (lngLevel=0) womit ich dann alle Meldungen bekommen m��te, die u.a. f�r die Gruppe 3 freigeschaltet wurden sowie alle �ffentlichen (Level 0). Stimmt das so, oder �bersehe ich was ? Ich bin sicher, dass eine indexierte n:m-Verkn�pfung eleganter und f�r die Zukunft sicherer ist (ich habe hier ja nur max. 32 ebenen). Allerdings wei� ich nichts �ber die Performance-Einbu�en. Wei� da jemand was genaueres ? Danke, G�nter > -----Urspr�ngliche Nachricht----- > Von: christian marin [mailto:christian@;marin.at] > Gesendet: Donnerstag, 14. November 2002 18:28 > An: ActiveServerPages German > Betreff: [aspgerman] RE: Boolsches und beim ms sql > > > > Dabei �berlappen sich die Kundengruppen > > nicht (also Gruppe A kann nicht Gruppe > > B automatisch lesen), aber eine > > Meldung kann f�r Gruppe A und B > > freigeschaltet sein. Die Gruppen > > sind �ber Flags definiert (also Bit > > 1 f�r Gruppe A usw.) > > also hast du irgendwo definiert > gruppe a ..1, gruppe b ..2, ect > das flag f�r die berechtigung setzt sich dann zusammen > aus 2^1+2^3+.... - soweit richtig? > > dann fragst du f�r zb. gruppe C (8 = 2^3) so ab > > DECLARE @g int > SET @g = 3 (oder halt als parameter holen) > SELECT * FROM tblBla WHERE (intFlag ^ POWER(2, @g)) % > POWER(2, @g + 1) = 0 > > ^ ist das bitweise oder und modulo der n�chsth�heren 2er-potenz > ergeben alle 0, die in der summe die 8 drinnen haben > > hth, christian > > > | [aspgerman] als [EMAIL PROTECTED] subscribed > | http://www.aspgerman.com/archiv/aspgerman/ = Listenarchiv > | Sie k�nnen sich unter folgender URL an- und abmelden: > | http://www.aspgerman.com/aspgerman/listen/anmelden/aspgerman.asp > | [aspgerman] als [email protected] subscribed | http://www.aspgerman.com/archiv/aspgerman/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.aspgerman.com/aspgerman/listen/anmelden/aspgerman.asp
