Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapytanie z uźyciem indeksu
Forum PHP.pl > Forum > Bazy danych > MySQL
joytec
Witam.

mam taka tabele

CREATE TABLE 'test'(
id int not null auto_increment,
typ1 int not null default 0,
typ2 int not null efault 0,
INDEX `typ1` (`typ1`),
INDEX `typ2` (`typ2`)
);

Chcialbym uzyskac odczyt z typ1, typ2 uzyciem indexu np cos takiego : SELECT id, typ1, typ2 FROM test WHERE typ1=9 OR typ2=9. Oczywiscie w tym wypadku zapytanie nie uzyje indexu. Prosilbym o jakies sugetie. Dzieki.

aha czy uzycie UNION w tym wypadku jest wydajne?
Grzesiek
Ja się słabo na tym znam, ale chyba przy Twoim zapytaniu poniższy index będzie użyty?
  1. INDEX `typ12` (`typ1`, `typ2`)


Aha, tylko, że będzie użyty tylko wtedy gdy zapytanie będzie wyglądać tak
  1. SELECT id, typ1, typ2 FROM test WHERE typ1=9 AND typ2=9


Jezeli AND zastąpić OR to znowu INDEX nie będzie użyty. dry.gif
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.