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

    [MYSQL] Esiste last in mysql

    Ciao a tutti

    Sto iniziando ad usare mysql ed è fantastico ma comincio ad avere i primi problemi.
    Con access potevo usare la funzione aggregata last() e in mysql non esiste.
    Come posso modificare questa query in modo che venga digerita anche da mysql

    SELECT tab_base_def.nome, tab_base_def.cognome, tab_base_def.indirizzo, tab_base_def.codice_spedizione, tab_base_def.cap, tab_base_def.citta, tab_base_def.provincia, tab_base_def.stradale, tab_base_def.nome_agenzia, tab_base_def.siglaprov, Last(tab_abb_pop.num_copie_pop) AS UltimoDinum_copie_pop, tab_abb_pop.ritardi_pop, Max(tab_abb_pop.data_scadenza_pop) AS Ultima_Scadenza, tab_base_def.id_base
    FROM tab_base_def INNER JOIN tab_abb_pop ON tab_base_def.id_base = tab_abb_pop.id_base
    GROUP BY tab_base_def.nome, tab_base_def.cognome, tab_base_def.indirizzo, tab_base_def.codice_spedizione, tab_base_def.cap, tab_base_def.citta, tab_base_def.provincia, tab_base_def.stradale, tab_base_def.nome_agenzia, tab_base_def.siglaprov, tab_abb_pop.ritardi_pop, tab_base_def.id_base;

    In sostanza con questa query, che mi serve per gestire degli abbonamenti, mi viene restituito per ogni nominativo l'ultimo abbonamento e , usando last(), mi veniva restituito anche quante copie questo ultimo abbonamento aveva richiesto.
    Non riesco proprio ad uscirne.
    Come devo modificare questa benedetta query.

    Grazie a chi avrà la pazienza con questo pivello di mysql

    Enrico

  2. #2
    non conoscendo access non so cosa fa last().. e non mi va di studiarmi tutta qulla query per capirlo.. puoi spiegarti meglio su quel che ti serve esattamente?

  3. #3
    Ciao

    In pratica last è una funzione di aggregazione tipo max,min,ecc che però sembra non esista in mysql.
    Last prende l'ultimo della selezione.
    In sostanza la mia query prende l'ultima data con max e poi con last prendevo l'ultimo numero di copie in ordine temporale . Non posso usare un'altra volta il max in quanto il numero di copie è chiaramente un numero e se quel abbonato aveva 3 copie la penultima volta e 2 copie l'ultima usando max mi darebbe 3 copie.
    Se ti servono altre spiegazioni chiedi pure.

    Ciao
    Enrico

  4. #4
    quindi sarebbe il valore del record più recente?

    Come funzione aggragata non credo esista.. ma se fai una semplice select con limit 0,1 dovresti ottenere la stessa cosa...


  5. #5
    Ciao
    No, esserendoci un raggruppamento non funziona perchè mi limita il totale dei record e non del gruppo. O sbaglio ?

    Ciao
    Enrico

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.