Jump to content
php.lv forumi

Vienkāršs Search engine


janis888

Recommended Posts

Jāsāk ir ar to, ka nodefinē, kas glabāsies datu bāzē.

 

Piemērs:

Tabula:

lietotaji

Lauki:

id

login

parole

vards

 

Tabula:

raksti

Lauki:

id

datums

virsraksts

teksts

autora_id

 

 

Šajā gadījumā, droši vien meklēšanai vislielākā jēga būtu tabulas raksti laukā teksts.

Vaicājums pēc tā kā attiecībā uz mainīgo $meklejamais ir veikta nepieciešamā validācija izskatītos aptuveni šādi:

SELECT id FROM raksti WHERE teksts LIKE '%$meklejamis%'

 

Ja vajag meklēt tajā pašā tabulā pēc vairākiem laukiem, piemēram, kā šajā gadījumā arī pēc lauka virsraksts, tad:

SELECT id FROM raksti, WHERE teksts LIKE '%$meklejamais%' OR virsraksts LIKE '%$meklejamais%'

 

Ja vajag no vairākām tabulām. Nu, piemēram, ja man būtu vēl tabula raksti_arhivs, tad izskatītos aptuveni šādi:

SELECT id FROM raksti, WHERE teksts LIKE '%$meklejamais%' OR virsraksts LIKE '%$meklejamais%' UNION SELECT id FROM raksti_arhivs, WHERE teksts LIKE '%$meklejamais%' OR virsraksts LIKE '%$meklejamais%'

 

Bet vēlreiz atkārtoju: vispirms ir jāsaprot, kas un kādēļ tieši tādā formātā tiks glabāts konkrētajā tabulā.

Link to comment
Share on other sites

  • 2 weeks later...

Datubaaze jau var buut arii parasts fails ar teksta rindinjaam. Varbuut saakumam php bez MySQL un glabaat failos?

Pats ilgu laiku no MySQL baidijos:)

Lai gan ar MySQL ir daudz eertaak to visu protams, biezhi vien arii aatraak, ja datu apjoms failaa izaug liels.

Link to comment
Share on other sites

Datubaaze jau var buut arii parasts fails ar teksta rindinjaam. Varbuut saakumam php bez MySQL un glabaat failos?

Ar failu tas būs tas pats kā ar grāvi, lāpstu un ekskavatoru. Ja vajag mazu grāvīti un tikai vienreiz, tad lāpsta būs fiksāk, ērtāk un varbūt pat ātrāk. Ja vajag vai nu lielu grāvi vai jārok daudz mazi grāvīši, tad bez lielāka vai mazāka ekskavatora būs lēni, grūti un traki daudz sviedru, kurus var izliet jēdzīgākiem uzdevumiem.

Failiem nav kešošanas, tie ir jāskanē cauri no sākuma līdz beigām, maigi izsakoties diez ko nesupportē daudzus lietotājus.

 

A kas attiecas uz tasku meklēt pa visu DB, tad vajag padomāt cik daudz datu būs, cik daudz meklētāju (useru) un kā tas viss ies kopā ar tādu lietu kā saprātīgu atbildes laiku :)

 

Gints Plivna

http://datubazes.wordpress.com

Link to comment
Share on other sites

×
×
  • Create New...