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

    Mysql restituire valore operazione sotto forma di campo

    Salve ho questa query che a mio modo di vedere restituisce dei valori sbagliati ( invece sicuramente c'è qualcosa che sbaglio) :

    codice:
    SELECT 
    mezzi_tratte.*,
    mezzi.id as id_tabella_mezzi,
    mezzi.immagine,
    mezzi.nome,
    mezzi.descrizione as mezzi_descrizione,
    mezzi.passeggeri,mezzi.bagagli 
    FROM tratte_libere as tratte 
    INNER JOIN tratte_libere_mezzi as mezzi_tratte 
    ON tratte.id = mezzi_tratte.id_tratte_libere 
    INNER JOIN mezzi ON mezzi_tratte.id_mezzi = mezzi.id 
    WHERE 
    TRUNCATE ( 6363 * sqrt( POW( RADIANS("38.1899302") - RADIANS(tratte.latitudine_partenza) , 2 ) + POW( RADIANS("13.1129648") - RADIANS(tratte.longitudine_partenza) , 2 ) ) , 3 ) <= tratte.raggio_ricerca_km 
    AND TRUNCATE ( 6363 * sqrt( POW( RADIANS("38.0173505") - RADIANS(tratte.latitudine_arrivo) , 2 ) + POW( RADIANS("12.5365171") - RADIANS(tratte.longitudine_arrivo) , 2 ) ) , 3 ) <= tratte.raggio_ricerca_km 
    AND mezzi.passeggeri >= 1 
    AND mezzi.bagagli >= 0 
    AND mezzi.deleted_at IS NULL 
    AND mezzi_tratte.deleted_at IS NULL 
    ORDER BY mezzi_tratte.costo


    Come posso mostrare come campo il valore di :

    codice:
    
    
    codice:
    TRUNCATE ( 6363 * sqrt( POW( RADIANS("38.1899302") - RADIANS(tratte.latitudine_partenza) , 2 ) + POW( RADIANS("13.1129648") - RADIANS(tratte.longitudine_partenza) , 2 ) ) , 3 )
    


    Perchè la query restituisce anche tratti con raggi di ricerca maggiori, dove è l'errore ?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    scusa, ma non capisco...

    che valore restituisce la query? e che valore dovrebbe restituire?

  3. #3
    ho la boccia di vetro da Zeno lo stagnaro a sistemare puoi spiegarti meglio?

  4. #4
    Quote Originariamente inviata da optime Visualizza il messaggio
    ho la boccia di vetro da Zeno lo stagnaro a sistemare puoi spiegarti meglio?

    Tramite le api di google map riesco a prelevare le coordinate dei punti , delle aziende inseriscono delle tratte come punto di partenza e punto di arrivo io devo restituire i valori all'interno di questo raggio ho modificato la query in questo modo per avere più dati come risposta della query :

    codice:
                        SELECT  mezzi_tratte.*,mezzi.id as id_tabella_mezzi,mezzi.immagine,mezzi.nome,mezzi.descrizione as mezzi_descrizione,mezzi.passeggeri,mezzi.bagagli,
                        TRUNCATE ( 6363 * sqrt( POW( RADIANS("38.1899302") - RADIANS(tratte.latitudine_partenza) , 2 ) + POW( RADIANS("13.1129648") - RADIANS(tratte.longitudine_partenza) , 2 ) ) , 3 ) as distanza_partenza,
                        TRUNCATE ( 6363 * sqrt( POW( RADIANS("38.0173505") - RADIANS(tratte.latitudine_arrivo) , 2 ) + POW( RADIANS("12.5365171") - RADIANS(tratte.longitudine_arrivo) , 2 ) ) ,3 ) as distanza_ritorno
                        FROM tratte_libere as tratte 
                        JOIN tratte_libere_mezzi as mezzi_tratte
                        ON tratte.id = mezzi_tratte.id_tratte_libere
                        JOIN mezzi
                        ON mezzi_tratte.id_mezzi = mezzi.id
                        WHERE TRUNCATE ( 6363 * sqrt( POW( RADIANS("'.$latitudine_partenza.'") - RADIANS(tratte.latitudine_partenza) , 2 ) + POW( RADIANS("'.$longitudine_partenza.'") - RADIANS(tratte.longitudine_partenza) , 2 ) ) , 3 ) < tratte.raggio_ricerca_km
                        AND TRUNCATE ( 6363 * sqrt( POW( RADIANS("'.$latitudine_arrivo.'") - RADIANS(tratte.latitudine_arrivo) , 2 ) + POW( RADIANS("'.$longitudine_arrivo.'") - RADIANS(tratte.longitudine_arrivo) , 2 ) ) , 3 ) < tratte.raggio_ricerca_km
                        AND mezzi.passeggeri >= '.$passeggeri.'
                        AND mezzi.bagagli >= '.$bagagli.'
                        AND mezzi.deleted_at IS NULL
                        AND mezzi_tratte.deleted_at IS NULL
                        ORDER BY mezzi_tratte.costo

  5. #5
    Rispondo perchè non mi fà modificare correttamente...

    Inserendo due luoghi cerca le tratte con un raggio sia in partenza che in arrivo preimpostato (ad esempio 10 km).

    Queste sono le coordinatte :

    codice:
    partenza: 38.1824001 13.1005819
    arrivo :    38.0173505 12.5365171
    avendo delle tratte :

    1 tratta
    38.18240010000000 13.10058190000000 arrivo 38.01735050000000 12.53651710000000

    2 tratta
    38.18993020000000 13.11296480000000 arrivo 38.01735050000000 12.53651710000000



    ho queste distanze che non mi tornano

    1 tratta
    1.609 0.000

    2 tratta

    0.000 0.000
    :

    Perchè la partenza che coincide mi segna un valore invece che 0 e oltretutto che non rispecchia i reali km ?

  6. #6
    Quote Originariamente inviata da pippuccio76 Visualizza il messaggio
    Rispondo perchè non mi fà modificare correttamente...

    Inserendo due luoghi cerca le tratte con un raggio sia in partenza che in arrivo preimpostato (ad esempio 10 km).

    Queste sono le coordinatte :

    codice:
    partenza: 38.1824001 13.1005819
    arrivo :    38.0173505 12.5365171
    avendo delle tratte :

    1 tratta
    38.18240010000000 13.10058190000000 arrivo 38.01735050000000 12.53651710000000

    2 tratta
    38.18993020000000 13.11296480000000 arrivo 38.01735050000000 12.53651710000000



    ho queste distanze che non mi tornano

    1 tratta
    1.609 0.000

    2 tratta

    0.000 0.000
    :

    Perchè la partenza che coincide mi segna un valore invece che 0 e oltretutto che non rispecchia i reali km ?

    Scusate funziona alla perfezione , mostrava una tratta non attivs , io pensavo mostrasse altro...

  7. #7
    Quote Originariamente inviata da pippuccio76 Visualizza il messaggio
    Scusate funziona alla perfezione...
    bene!

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.