Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Somma dentro sql e formatnumber

    Ciao a tuttti ecco il problema ...

    allora ho un db Acess 2003 con vari campi tra cui 2 numerici in questo modo:
    latitude: 40,6318351429372
    longitude: 2,16601127113153 (questo campo può essere anche -2,1212)

    io nella mia sql dovrei sommarli in questo modo togliendeo il segno negativo 40,631 (quaranta,631)+2,166(due,166):

    ho fatto così ma non funziona:

    order by ( formatnumber(h.latitude,3) + formatnumber(h.longitude,3) ) asc



    avete qualche consiglio

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    I numeri decimali di Access sono rappresentati con il punto (.) non con la virgola...
    Ma dovresti poi ordinare in base alla somma di quei valori?
    Hai già verifiato poi che la formatnumber sia una funzione anche di Access?

    Roby

  3. #3
    I numeri decimali di Access sono rappresentati con il punto (.) non con la virgola...
    ehh.. però io ho più di 4000 record inseriti in questo modo

    Ma dovresti poi ordinare in base alla somma di quei valori?
    si esattamente ...

    Hai già verifiato poi che la formatnumber sia una funzione anche di Access?
    si qui c'è scritto così..
    http://office.microsoft.com/it-it/ac...288421040.aspx

    il problema è che penso che formatnumber mi formatti i numeri in migliaia tipo 40mila 631 e non 40(quaranta),631 lasciando perdere formatnumber come potrei fare??

  4. #4
    ma usare cdbl invece di formatnumber?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  5. #5
    ho fatto questa prova
    order by ( CDbl(h.latitude)+CDbl(h.longitude) )
    ma il risultato non è come sperato ... io ho numeri con la virgola so che CDbl funziona con . o sbaglio?

  6. #6

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Prova a metterlo nella SELECT piuttosto che nell'ORDER BY così vedi come interpreta.

    Roby

  8. #8
    ciao ho fatto così per fare una prova..

    SELECT CDbl(latitude) As lat, CDbl(longitude) As long1, CDbl(latitude)+CDbl(longitude) As sommall FROM hotel_es

    stampa:
    39,6891990602862
    2,51344442367554
    42,2026434839617

    però se io facci tutto senza CDbl il risulato è sempre uguale ... bah.. non ci capisco più niente ...

    Roby ti vorrei chiedere una consiglio io dovrei ordinare i record in base alla distanza da un punto .., quello che ho pensato è di sommare la latitudine + la longitudine dei miei record e ordinarla by asc o desc, perchè in teoria la somma tra longitudine e latitudine maggiore è e di conseguenza sarà maggiore la lontantanza .. che dici .. ho pensato bene tu come faresti..?

  9. #9
    ho trovato uno script in php che potrebbe fare al caso mio solo che mi serve in asp http://www.senamion.it/2007/03/30/go...a-da-un-punto/ la parte che interessa a me è questa ..

    Codice PHP:
    TRUNCATE 6363 sqrtPOWRADIANS($lat) - RADIANS(l.latitudine) , ) + POWRADIANS($long) - RADIANS(l.longitudine) , ) ) , ) AS dist 
    è possibile trasformarlo in asp?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.