![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 24.06.2005 Ostrzeżenie: (0%) ![]() ![]() |
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? Ten post edytował joytec 25.02.2008, 17:52:49 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 96 Pomógł: 3 Dołączył: 15.04.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Ja się słabo na tym znam, ale chyba przy Twoim zapytaniu poniższy index będzie użyty?
Aha, tylko, że będzie użyty tylko wtedy gdy zapytanie będzie wyglądać tak
Jezeli AND zastąpić OR to znowu INDEX nie będzie użyty. ![]() Ten post edytował Grzesiek 29.02.2008, 19:29:23 -------------------- Linux is like wigwam, no windows, no gates and an apache inside.
Mój blog łebmasterski (po angielsku) Web Development Blog. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.07.2025 - 09:42 |