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

Czy 'false' może pasować do jakiegoś ciągu w mysql?

W MYSQL FAŁSZ nie jest wartością logiczną, to liczba całkowita, a dokładniej zero. W rzeczywistości MySQL nie ma typów kolumn logicznych (ma BOOL i BOOLEAN ale to tylko aliasy dla TINYINT ). Twoje zapytanie jest więc synonimem:

SELECT * FROM session WHERE token = 0

Od token jest VARCHAR, MySQL musi przekonwertować twoje łańcuchy na liczbę. Uruchom to zapytanie, a zorientujesz się w zasadach:

SELECT
    0 + "0001",
    0 + "123abc",
    0 + "abc123"

W rezultacie fa356333dd3ee8f1b18b8bf0a827e34c rzutuje na 0 ponieważ zaczyna się na literę, więc dopasowanie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wybierz rekordy z TERAZ() -1 dzień

  2. jak wyprowadzić tabelę klasyfikacji w locie z tabeli mysql wyników piłkarskich [soccer]?

  3. Test połączenia PDO

  4. Przesyłanie strumieniowe dużych zestawów wyników za pomocą MySQL

  5. Przywróć bazę danych MySQL ze znakami Unicode (arabskimi i kurdyjskimi) w formacie .gz