Vyhledávání dle adresy – MS SQL – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Vyhledávání dle adresy – MS SQL – Fórum – Programujte.comVyhledávání dle adresy – MS SQL – Fórum – Programujte.com

 

Michal Ř.
~ Anonymní uživatel
4 příspěvky
28. 1. 2014   #1
-
0
-

Dobrý den,

Potřebujeme v principu vymyslet hledání dle adresy, jako na http://www.damejidlo.cz/. Máme k dispozici všechny adresy v ČR (zhruba 2 800 000 adres), s kterými dále pracujeme v systému. K jednotlivým adresám budeme přiřazovat atributy. Tzn., že na dotaz na adresu vyleze služba XY nebo více služeb XY. Zajímá mě, jak se vlastně chová takové vyhledávání jako na http://www.damejidlo.cz/ , protože script přece nemůže procházet 2 800 000 adres, když zadáte 1 konkrétní adresu? Jak se podobné vyhledávání řeší? A jak v takovém případě přistupovat k návrhu databáze? Děkuji, pokud vás něco napadne.

Díky, Michal

Nahlásit jako SPAM
IP: 178.17.2.–
P
~ Anonymní uživatel
212 příspěvků
28. 1. 2014   #2
-
0
-

Tak zalezi jestli chces odpoved na to, jak pracuje damejidlo.cz nebo jak ma pracovat Tvoje aplikace.

Jestlize budes prirazovat, dostupne sluzby jednotlivym adresam (jak je psano v dotazu), tak ziskani sluzeb pro urcitou adresu je relativne jednoduche - v tabulce sluzeb bude cizi klic ID adresy a po nalezeni adresy se vypisou vsechny sluzby s timto ID. Pro nalezeni adresy je potreba rozparsovat uzivatelsky vstup. V databazi zadny script data neprochazi, je potreba pouzit vhodne indexy.  

Damejidlo.cz zrejme pracuje s geografickymi daty - k zadane adrese vypise restaurace v urcitem okoli.

Nahlásit jako SPAM
IP: 85.93.116.–
Michal Ř.
~ Anonymní uživatel
4 příspěvky
29. 1. 2014   #3
-
0
-

#2 P

Díky za ujasnění, a však stále jako neprogramátor nemám jasno. Chceme to stejné vyhledávání, jako na Dámejídlo.

  1. Co prosím znamená "rozpársovat uživatelský přístup"?
  2. Co je myšleno vhodnými indexy a jak se s nimi pracuje?

Díky pokud se vám podaří mi to ještě ujasnit

Michal

Nahlásit jako SPAM
IP: 178.17.2.–
peter
~ Anonymní uživatel
3981 příspěvků
29. 1. 2014   #4
-
0
-

rozparsovat -> anglicky parse, slovnik.cz nebo slovnik.seznam.cz -> udělat rozbor čeho, oddělovat
"lucni konik" -> array("lucni","konik") -> WHERE adresa ="%lucni%" OR adresa ="%konik%"  (pripadne fulltext vyhledavani v db)

vhodnými indexy
vhodne klicove slova, cisla, retezce pro vyhledavani
Asi nemas moc zkusenosti s db. Tam mas tabulku, jako v excelu, kde mas pojmenovane sloupce a pod nimi jsou udaje. Ke kazdemu sloupci nebo skupine sloupcu muzes priradit indexy. Db si pak vytvori pomocnou tabulku, ktera urychli vyhledavani, protoze bude vyhledavat v teto pomocne tabulce indexu misto aby pracne prohledaval radek po radku.
Napr, mas v databazi slova, ktera zacinaji na A. Bez indexu musi projit treba vsech tvych 2.000.000 radku a provest porovnani prvni znak == "A" nebo 'a". V index tabulce mas pak 80 radku s pismeny abecedy a cisla radku z cele tabulky. takze porovna 52 radku, ktere z nich je A nebo a, vypadnou 2 radky, ktere obsahuji uz konkretni cisla radku, ktera si dohleda v puvodni tabulce.

Nebo treba pri fulltext vyhledavani takovy index udela tak, ze projde text ulozeny do sloupce, vytahne z tama vsechna slova, odfiltruje duplicity a ulozi si slovo + cislo radku tabulky, kde prave je.
Ty pak zadas do vyhledavaciho okenka seznam slov a on je najde v indexech, ziska seznam radku, kde se vyskytuji a vytahne pak z originalni tabulky data, ktera jsi po nem chtel.

Nahlásit jako SPAM
IP: 2001:718:2601:400:0:5efe:...–
Michal Ř.
~ Anonymní uživatel
4 příspěvky
29. 1. 2014   #5
-
0
-

#4 peter

Díky za informace. K tomuto jsem se potřeboval dostat.

MIchal

Nahlásit jako SPAM
IP: 178.17.2.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 2 hosté

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý