Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySql] Nie szuka po kolumnach indeksowanych.
mariuszg
post 26.02.2008, 11:49:27
Post #1





Grupa: Zarejestrowani
Postów: 136
Pomógł: 0
Dołączył: 22.06.2006

Ostrzeżenie: (0%)
-----


witam,

MySql Query Browser podczas:

  1. EXPLAIN SELECT marka,model,typ id_dane,stan, rocznik,cena,region,przebieg, data_aktywacji, kategoria, typ_oferty, osobowe_marka.id, rocznik, rocznik FROM ogloszenia_02.dane LEFT JOIN ogloszenia_02.osobowe_marka ON osobowe_marka.id = dane.id_marka
  2. LEFT JOIN ogloszenia_02.osobowe_model ON osobowe_model.id = dane.id_model
  3. LEFT JOIN ogloszenia_02.osobowe_typ ON osobowe_typ.id = dane.id_typ
  4.  
  5. WHERE rocznik > 2005 AND rocznik < 2009 AND stan = 1 AND kategoria = 1 AND typ_oferty = 1
  6.  
  7. ORDER BY cena DESC


pokazuje że:

possible_keys - stan,kategoria,typ_oferty,rocznik
key - stan


czas wyszukiwania około 2,5 s

czasami szuka po indeksie rocznik i wtedy wyszukiwanie trwa 0,02 s

Dlaczego zawsze nie wyszukuje po roczniku ?

tabela:

  1. CREATE TABLE `dane` (
  2. `id_dane` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `id_uzytkownik` int(10) UNSIGNED NOT NULL,
  4. `fp` tinyint(1) UNSIGNED DEFAULT NULL,
  5. `kategoria` tinyint(1) UNSIGNED DEFAULT NULL,
  6. `typ_oferty` tinyint(1) UNSIGNED DEFAULT NULL,
  7. `data_dodania` datetime DEFAULT NULL,
  8. `data_aktywacji` datetime DEFAULT NULL,
  9. `stan` tinyint(1) UNSIGNED DEFAULT NULL,
  10. `wyroznienie` tinyint(1) UNSIGNED DEFAULT NULL,
  11. `fotografie` tinyint(1) UNSIGNED DEFAULT NULL,
  12. `id_marka` int(10) UNSIGNED DEFAULT NULL,
  13. `id_model` int(10) UNSIGNED DEFAULT NULL,
  14. `id_typ` int(10) UNSIGNED DEFAULT NULL,
  15. `rocznik` smallint(11) UNSIGNED DEFAULT NULL,
  16. `miesiac` varchar(3) DEFAULT NULL,
  17. `przebieg` int(10) UNSIGNED DEFAULT NULL,
  18. `cena` int(10) UNSIGNED DEFAULT NULL,
  19. `region` char(2) DEFAULT NULL,
  20. `typ_silnika` char(10) DEFAULT NULL,
  21. `silnik` varchar(2) DEFAULT NULL,
  22. `pojemnosc` char(5) DEFAULT NULL,
  23. `moc` char(5) DEFAULT NULL,
  24. `typ_nadwozia` char(2) DEFAULT NULL,
  25. `drzwi` char(2) DEFAULT NULL,
  26. `kolor` varchar(20) DEFAULT NULL,
  27. `o_1` tinyint(1) UNSIGNED DEFAULT NULL,
  28. `o_2` tinyint(1) UNSIGNED DEFAULT NULL,
  29. `o_3` tinyint(1) UNSIGNED DEFAULT NULL,
  30. `o_4` tinyint(1) UNSIGNED DEFAULT NULL,
  31. `o_5` tinyint(1) UNSIGNED DEFAULT NULL,
  32. `o_6` tinyint(1) UNSIGNED DEFAULT NULL,
  33. `o_7` tinyint(1) UNSIGNED DEFAULT NULL,
  34. `o_8` tinyint(1) UNSIGNED DEFAULT NULL,
  35. `o_9` tinyint(1) UNSIGNED DEFAULT NULL,
  36. `o_10` tinyint(1) UNSIGNED DEFAULT NULL,
  37. `o_11` tinyint(1) UNSIGNED DEFAULT NULL,
  38. `o_12` tinyint(1) UNSIGNED DEFAULT NULL,
  39. `o_13` tinyint(1) UNSIGNED DEFAULT NULL,
  40. `o_14` tinyint(1) UNSIGNED DEFAULT NULL,
  41. `o_15` tinyint(1) UNSIGNED DEFAULT NULL,
  42. `w_1` tinyint(1) UNSIGNED DEFAULT NULL,
  43. `w_2` tinyint(1) UNSIGNED DEFAULT NULL,
  44. `w_3` tinyint(1) UNSIGNED DEFAULT NULL,
  45. `w_4` tinyint(1) UNSIGNED DEFAULT NULL,
  46. `w_5` tinyint(1) UNSIGNED DEFAULT NULL,
  47. `w_6` tinyint(1) UNSIGNED DEFAULT NULL,
  48. `w_7` tinyint(1) UNSIGNED DEFAULT NULL,
  49. `w_8` tinyint(1) UNSIGNED DEFAULT NULL,
  50. `w_9` tinyint(1) UNSIGNED DEFAULT NULL,
  51. `w_10` tinyint(1) UNSIGNED DEFAULT NULL,
  52. `w_11` tinyint(1) UNSIGNED DEFAULT NULL,
  53. `w_12` tinyint(1) UNSIGNED DEFAULT NULL,
  54. `w_13` tinyint(1) UNSIGNED DEFAULT NULL,
  55. `w_14` tinyint(1) UNSIGNED DEFAULT NULL,
  56. `w_15` tinyint(1) UNSIGNED DEFAULT NULL,
  57. `w_16` tinyint(1) UNSIGNED DEFAULT NULL,
  58. `w_17` tinyint(1) UNSIGNED DEFAULT NULL,
  59. `w_18` tinyint(1) UNSIGNED DEFAULT NULL,
  60. `w_19` tinyint(1) UNSIGNED DEFAULT NULL,
  61. `w_20` tinyint(1) UNSIGNED DEFAULT NULL,
  62. `w_21` tinyint(1) UNSIGNED DEFAULT NULL,
  63. `w_22` tinyint(1) UNSIGNED DEFAULT NULL,
  64. `w_23` tinyint(1) UNSIGNED DEFAULT NULL,
  65. `w_24` tinyint(1) UNSIGNED DEFAULT NULL,
  66. `w_25` tinyint(1) UNSIGNED DEFAULT NULL,
  67. `w_26` tinyint(1) UNSIGNED DEFAULT NULL,
  68. `w_27` tinyint(1) UNSIGNED DEFAULT NULL,
  69. `w_28` tinyint(1) UNSIGNED DEFAULT NULL,
  70. `w_29` tinyint(1) UNSIGNED DEFAULT NULL,
  71. `w_30` tinyint(1) UNSIGNED DEFAULT NULL,
  72. `w_31` tinyint(1) UNSIGNED DEFAULT NULL,
  73. `w_32` tinyint(1) UNSIGNED DEFAULT NULL,
  74. `w_33` tinyint(1) UNSIGNED DEFAULT NULL,
  75. `w_34` tinyint(1) UNSIGNED DEFAULT NULL,
  76. `w_35` tinyint(1) UNSIGNED DEFAULT NULL,
  77. `w_36` tinyint(1) UNSIGNED DEFAULT NULL,
  78. `w_37` tinyint(1) UNSIGNED DEFAULT NULL,
  79. `w_38` tinyint(1) UNSIGNED DEFAULT NULL,
  80. `w_39` tinyint(1) UNSIGNED DEFAULT NULL,
  81. `w_40` tinyint(1) UNSIGNED DEFAULT NULL,
  82. `w_41` tinyint(1) UNSIGNED DEFAULT NULL,
  83. `w_42` tinyint(1) UNSIGNED DEFAULT NULL,
  84. `sciezka` varchar(50) DEFAULT NULL,
  85. `foto_a` varchar(50) DEFAULT NULL,
  86. `foto_b` varchar(50) DEFAULT NULL,
  87. `foto_c` varchar(50) DEFAULT NULL,
  88. `foto_d` varchar(50) DEFAULT NULL,
  89. `foto_e` varchar(50) DEFAULT NULL,
  90. `foto_f` varchar(50) DEFAULT NULL,
  91. `foto_g` varchar(50) DEFAULT NULL,
  92. `foto_h` varchar(50) DEFAULT NULL,
  93. `foto_i` varchar(50) DEFAULT NULL,
  94. PRIMARY KEY (`id_dane`),
  95. KEY `FK_id_marka` (`id_marka`),
  96. KEY `stan` (`stan`),
  97. KEY `kategoria` (`kategoria`),
  98. KEY `typ_oferty` (`typ_oferty`),
  99. KEY `data_aktywacji` (`data_aktywacji`),
  100. KEY `rocznik` (`rocznik`)
  101. ) ENGINE=InnoDB DEFAULT CHARSET=latin2 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=100006 ;
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.06.2025 - 07:33