Jump to content
php.lv forumi

Recommended Posts

Posted

Man tomēr nekā nesanāk atrisināt šo problēmu ar datu skaitīšanu!

Uztaisiju lai katru titles vardu ielik savā ierakstā un tad skaita, bet tas ierakstu skaitīšanu vispar nepaātrināja

!!

  • Replies 60
  • Created
  • Last Reply

Top Posters In This Topic

Posted

Izmēģināju visus indexu tipus, bet skaitīšana uz dažiem vārdiem aizņem 0,003s bet uz dažiem 300s vai ari vispār saskaita 0 kaut arī ir ieraksti, vai ari paiet kādas 300s un parāda 0 ierakstu (ja vārda nav), bet es domāju , ka tik ilgi nevajag skaitīt to kā nav!

Nezinu explain komandu!

Posted

Pirmkārt, ieiet manuālī - http://dev.mysql.com/doc/refman/5.0/en/using-explain.html

Otrkārt, ieiet jebkurā mysql klientā (kautvai komandrindas mysql.exe) un izpildīt kveriju EXPLAIN SELECT tavs_kverijs. Un no parādītajiem rezultātiem secināt, kādus indeksus šis taisās lietot vai nē.

Indeksus nevajag uz bobi likt. Vajag no izpildāmā kverija secināt precīzi kādus vajadzēs, salikt tos, un ar explain pārbaudīt vai tie izmantojas.

Posted

EXPLAIN tev neatgriezīs paša kverija rezultātus. Tak atver manuāli un palasi lūdzams, ko tas atgriež.

echo $col['vards'] vietā ieraksti print_r($col);

Un kas tev ir $aa mainīgais, m?

 

Slikti, ka tu neprogrammē ar error_reporting = E_ALL un display_errors = 1.

Posted

Array ( [id] => 1 [select_type] => SIMPLE [table] => vardi [type] => ref [possible_keys] => vards [key] => vards [key_len] => 20 [ref] => const [rows] => 2959 [Extra] => Using where; Using index ) ) for "dvdrip"

 

Array ( [id] => 1 [select_type] => SIMPLE [table] => vardi [type] => ref [possible_keys] => vards [key] => vards [key_len] => 20 [ref] => const [rows] => 107 [Extra] => Using where; Using index ) ) for "russia"

 

 

ko pēc ši var secināt? Ka indexi strādā, bet bez jeegas?

Posted

Jā, indeksi strādā. Šādam kverijam vajadzētu izpildīties ļoti ātri, arī uz daudziem tūkstošiem rindu.

Kāds izskatās tavs indekss uz vards kolonnu?

Posted

Tagad ir

 

Keyname Type Cardinality Action Field

vards_in UNIQUE 27124 Edit Drop vards

 

Kverija

 

$aa = mysql_query("SELECT * FROM vardi WHERE vards LIKE'$s%' ORDER by vards ASC ");

while ($col = mysql_fetch_assoc($aa)){

echo $col['skaits'];

}

 

Meklējamais vārds | Laiks

dvdrip 0.0659289360046

music 0.693972826004

war 0.223150014877

Latvia 88.6878938675 - nez kāpēc ilgi

Antartic 71.9599230289 -tāda vārda nav, bet lēni to noskaidroja


×
×
  • Create New...