Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Odczyt pojedynczych znaków z pola
Forum PHP.pl > Forum > Bazy danych > MySQL
pc5
Witam,

Mam w tabeli 4-elementową tablicę checkboxków zapisaną w komórce, która ma taką definicję :

  1. `transport` BINARY(4) NOT NULL DEFAULT '0000'


Pole to często będzie przeszukiwane dlatego zależy mi na szybkości działania zapytania, które SPRAWDZI wartość tego pola.

Jak sprawdzić tylko pierwszy znak z komórki? Podobnie, jak sprawdzić TYLKO znak 2,3 lub 4?
Nie mam na to pomysłu patrząc od strony SQLa. Mógłbym rozbić to pole na 4 inne komórki z wartościami binarnymi o długości 1, ale jeżeli opcje transportu wzrosną do np 20...

Proszę o pomoc, może jakieś inne rozwiązanie?
Pozdrawiam serdecznie
nospor
Jakbys uzyl zamiast binary varchar, to bys mogl uzyc substr:
http://dev.mysql.com/doc/refman/5.0/en/str...ction_substring
by podejrzec daną wartość. A do binary to nawet nie wiem czym sie operuje.

Pozatym czemu uzywasz na okreslenie stanu 0 lub 1 az jednego bajta? Skoro wiec mowisz ze mozesz miec tych stanow az 20, to potrzebowac bedziesz 20 bajtow.
Jakbys uzyl bitow a nie bajtow, to zapamietanie stanu 20 pozycji zajelo by ci 3 bajty. No i operacje byly szybsze bo operowaly by na bitach.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.