Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czym są te wszystkie operatory SQL w Laravelu?

Tak jak wspomnieli inni komentatorzy, są to operatory bitowe. Operatory bitowe PHP są udokumentowane tutaj:http://php.net/manual/ pl/language.operators.bitwise.php

Przykłady

& to bitowe AND operator.

10 i 10 =10 (wszystkie reprezentacje dziesiętne). Jak? 10 to 1010 binarne.

    1010
and 1010
--------
    1010

Zauważ, że wynikiem jest 1 tylko wtedy, gdy zarówno górna, jak i dolna liczba w tej samej kolumnie to 1.

Sposób, w jaki PHP pisze, że:

<?php
echo 10 & 10;
?>
Result: 10

Jaki jest z tego praktyczny użytek? Weźmy przykład:są 4 zestawy podwójnych drzwi. Aby osoba mogła przejść, obydwoje drzwi muszą otworzyć się w tym samym czasie. Otwarte drzwi otrzymują numer 1. Zamknięte drzwi otrzymują numer 2.

1010 oznacza, że ​​pierwsze drzwi są otwarte, drugie zamknięte, trzecie otwarte, czwarte zamknięte. Gdy wszystkie drzwi są zamknięte, będą wyglądać tak:

0000  <-- first set of doors
0000  <-- second set of doors

Aby umożliwić komuś przejście przez skrajne lewe drzwi, drzwi powinny wyglądać tak:

0001
0001

Wszystko w porządku, ale jest szybszy sposób na opisanie tego. Operator bitowy &. Robimy &między obydwoma drzwiami i otrzymujemy wynik 1. Więc jeśli dane są przechowywane jako 1, wiemy, że najbardziej lewe drzwi były otwarte.

Aby otworzyć lewe drzwi, kombinacja musiałaby wyglądać następująco:

1000
1000

Wynik operatora bitowego jest liczbą dziesiętną 8. Użyj kalkulatora jak jeden na mininarzędziu pobiegać trochę matematyki.

Z drugiej strony, ponieważ drzwi otwierają się i zamykają przez cały dzień, można było odnotować, kiedy oboje drzwi któregokolwiek z 4 zestawów drzwi były otwarte. To tylko długa odpowiedź na być może proste pytanie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie można pobrać wierszy w instrukcji sql

  2. Jak napisać przygotowaną instrukcję w PHP dla zapytania SELECT BETWEEN mysql pomiędzy dwoma datami/godzinami?

  3. Kod błędu:1292. Obcięta niepoprawna PODWÓJNA wartość:„tak”

  4. Konfigurowanie Django do korzystania z MySQL

  5. java.sql.Rozszerzenie połączenia dla SSH