ulozene procedury v mysql

Programovacie jazyky, rady, poradňa...
jakub123
Novice
Novice
Príspevky: 4
Registrovaný: 13 jan 2015, 17:26

ulozene procedury v mysql

Príspevok od používateľa jakub123 »

Zdravim, potrebujem v databaze kde mam v tabulke bod(lat,lon) vybrat len riadky ,ktore su v urcitej vzdialenosti od daneho bodu,je to mozne riesit asi najlepsie ulozenou procedurou v sql ,alebo sa to da aj inak?
dakujem za radu
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: ulozene procedury v mysql

Príspevok od používateľa BX »

Prečo uloženou procedúrou? V čom to robíš?
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8217
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: ulozene procedury v mysql

Príspevok od používateľa harrison314 »

Asi nejak takto (ak ide o Euklidovu vzdialenost)

Kód: Vybrať všetko

SELECT lat, lon, sqrt(POW(lat - @actLat,2)+POW(lon-@actPow,2)) AS Distance FROM bod WHERE Distance < @actDist
Boccaccio
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1097
Registrovaný: 01 mar 2014, 14:00
Bydlisko: Bratislava

Re: ulozene procedury v mysql

Príspevok od používateľa Boccaccio »

je toho plny internet, napr. aj takto sa to da
http://www.havlena.net/en/programming/g ... l-and-php/
jakub123
Novice
Novice
Príspevky: 4
Registrovaný: 13 jan 2015, 17:26

Re: ulozene procedury v mysql

Príspevok od používateľa jakub123 »

jasne,dakujem, neviem preco som si neuvedomil, ze bod ma stale len jednu hodnotu,meni sa len bod v tabulke takze je to najlepsie tym selectom ako pises
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8217
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: ulozene procedury v mysql

Príspevok od používateľa harrison314 »

POZOR. Musis si uvedomit rozdiel medzy tym ake riesnie som napisal ja a ake Boccaccio
jakub123
Novice
Novice
Príspevky: 4
Registrovaný: 13 jan 2015, 17:26

Re: ulozene procedury v mysql

Príspevok od používateľa jakub123 »

rozdiel je vtom ze jedno je select a druhe ulozena procedura nie :D

este jedna podotazka, mySQL mi hlasi chybu pri spustani
SELECT lat, lon, sqrt(POW(lat - @actLat,2)+POW(lon-@actPow,2)) AS Distance FROM bod WHERE Distance < @actDist

Unknown column 'Distance' in 'where clause'

nasiel som,ze mysql to neumi,cize do podmienky mu treba dat zasa vypocitanie vzdialenosti a tu porovnat s pozadovanou
Boccaccio
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1097
Registrovaný: 01 mar 2014, 14:00
Bydlisko: Bratislava

Re: ulozene procedury v mysql

Príspevok od používateľa Boccaccio »

nie, rozdiel je niekde uplne inde, asi si stranku z mojho linku ani neprecital... :?
jakub123
Novice
Novice
Príspevky: 4
Registrovaný: 13 jan 2015, 17:26

Re: ulozene procedury v mysql

Príspevok od používateľa jakub123 »

pozrel som to narychlo, ulozene procedury som este nerobil,tak som to celkom neporozumel,alebo vobec :)
Boccaccio
Medium Professional
Medium Professional
Používateľov profilový obrázok
Príspevky: 1097
Registrovaný: 01 mar 2014, 14:00
Bydlisko: Bratislava

Re: ulozene procedury v mysql

Príspevok od používateľa Boccaccio »

ide najma o to, ze vdaka (tejto konkretnej) procedure sa neprepocitava cela databaza, ale len urcite zaznamy, ktore su v nastavenom intervale (radiuse), cize je to neporovnatelne rychlejsie
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8217
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: ulozene procedury v mysql

Príspevok od používateľa harrison314 »

Rozdiel je najä vo vzdialenosti.
Napísať odpoveď