A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  Sonderzeichen  sybase-tech-blog


Kategorie: ASE: T-SQL: Operatoren

Bit Operatoren

Ein Bit Operator ist ein Teil einer Query, also einer Datenbankabfrage. Mit Hilfe von Bit Operatoren kann direkt auf die binäre Darstellung von Zahlen zurückgegriffen werden.

Bit Operatoren und Beispiele

  • & (ampersand) - AND
        select 5 & 3
    go
    -----
    1
      gibt 1 zurück (0101 & 0011 = 0001)

  • | (vertical bar, pipe) - OR
        select 5 | 2
    go
    -----
    7
      gibt 7 zurück (0101 | 0010 = 0111)

  • ˆ (circumflex) - EXOR
        select 5 ˆ 3
    go
    -----
    6
      gibt 6 zurück (0101 ˆ 0011 = 0110)

  • ~ (tilde) - NOT
        select ~1
    go
    -----
    -2
      gibt -2 zurück (~0001 = 1110)

Beispiele und Regeln der bitweisen Verknüpfungen

AND - & (ampersand)

Mit dem bitweisen & Operator lässt sich beispielsweise testen, ob eine Zahl gerade oder ungerade ist. Es muss nur Bit 0 (bzw. das erste Bit) überprüft werden, ob es gesetzt, also "1" (ungerdae) oder nicht gesetzt, also "0" (gerade) ist.

    select 55 & 7
go
-----
7

Das Beispiel oben gibt 7 zurück.

Regeln der bitweisen UND-Verknüpfung (&)
BitA BitB BitA & BitB
0 0 0
0 1 0
1 0 0
1 1 1

OR - | (vertical bar, pipe)

Mit dem bitweisen ODER-Operator können gezielt zusätzliche Bits gesetzt werden.

    select 1|126
go
-----
127

Das Beispiel oben gibt 127 zurück.

Regeln der bitweisen ODER-Verknüpfung (|)
BitA BitB BitA | BitB
0 0 0
0 1 1
1 0 1
1 1 1

EXOR - ˆ (circumflex)

Der exklusive ODER-Operator EXOR liefert nur dann eine 1 zurück, wenn beide Bits unterschiedlich sind. Er ist geeignet, um Bits umzuschalten. Alle gesetzten Bits werden gelöscht und alle gelöschten gesetzt.

    select 20ˆ55
go
-----
35

Das Beispiel oben gibt 35 zurück.

Regeln der bitweisen EXOR-Verknüpfung (ˆ)
BitA BitB BitA ˆ BitB
0 0 0
0 1 1
1 0 1
1 1 0

NOT - ~ (tilde)

Der NOT-Operator (~) invertiert jedes einzelne Bit einer Zahlen. Bei vorzeichenbehafteten Datentypen entspricht das einer Negation mit anschließender Subtraktion von 1.

    select ~20
go
-----
-21

Das Beispiel oben gibt -21 zurück.

Regeln der bitweisen NOT-Verknüpfung (~)
BitA ~BitA
0 1
1 0


Siehe auch:
string operators,
logical operators,
pattern match operators,
numeric operators und
Umrechungstabelle Dezimal, Hexadezmial, Oktal und Binär.

Siehe auch:

pattern matching operators.