Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di nman
    Registrato dal
    Jan 2011
    residenza
    Milano
    Messaggi
    1,333

    Calcolo Cartesiano con SQL ( indipendente dal DB )

    Non per un problema contingente ma solo per rilassarmi

    Mi sto "scervellando" su un esercizio che
    mi ha incuriosito.

    Il DB utilizzato puo essere qualunque
    ( comunque io uso MSSQLServer oppure Access )

    __________________________________________________ _________


    Immaginiamo di avere un piano cartesiano
    e su questo piano abbiamo dei punti ( Pun )
    e di ogni punto abbiamo le coordinate ( CoX e CoY )



    Vogliamo applicando il teorema di pitagora
    ( o anche con altri strumenti )
    trovare la distanza fra ogni punto e
    tutti gli altri



    ( Quindi se ho 3 punti avremo 9 risposte )
    perche vogliamo calcolare anche la distanza del
    punto con se stesso

    __________________________________________________ ________


    Ho costruito questa tabella:
    _________ Spazio
    __ Pun __ Testo __ NotNull __ Key ___ ( Il nome del Punto )
    __ CoX __ Int ____ NotNull _________ ( La coordinata X del punto )
    __ CoY __ Int ____ NotNull _________ ( La coordinata Y del punto )



    Che query devo applicare per avere
    il risultato richiesto?????





    __________________________________________________ _______
    __________________________________________________ _______
    __________________________________________________ _______
    __________________________________________________ _______

    Ripropongo la domanda con un esempio pratico

    Se i dati sono questi:
    PunA ___ 3 ___ 4
    PunB ___ 5 ___ 11
    PunC ___ 2 ___ 7


    Il risultato deve essere:
    PunA ___ PunA ___ O
    PunA ___ PunB ___ 7,28xxx
    PunA ___ PunC ___ 3,16xxx
    PunB ___ PunA ___ 7,28xxx
    PunB ___ PunB ___ O
    PunB ___ PunC ___ 5,00000
    PunC ___ PunA ___ 3,16xxx
    PunC ___ PunB ___ 5,00000
    PunC ___ PunC ___ O





    Saluti

  2. #2
    prova questa

    codice:
    select * from punti ta, punti tb
    
    select ta.puntoNome, tb.puntoNome, sqrt((abs(ta.puntoX-tb.puntoX) * power(10,2)) + (abs(ta.puntoY-tb.puntoY) * power(10,2))) from punti ta, punti tb

  3. #3
    Utente di HTML.it L'avatar di nman
    Registrato dal
    Jan 2011
    residenza
    Milano
    Messaggi
    1,333
    Complimenti !!!

    La ho adattata un pochino ma è andata benissimo


    Non conoscevo la funzione SQRT e POWER
    ( soprattutto mi mancava la SQRT )


    Grazie

  4. #4

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.