Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    208

    [MySQL] Somma a condizione

    Es.

    ho una tabella:

    data_inizio
    data_fine
    prezzo_1
    prezzo_2
    prezzo_extra

    SELECT (prezzo_1+prezzo_2+prezzo_extra) AS somma, * FROM tabella WHERE...

    a me serve che il prezzo_extra venga sommato solo se il numero di giorni fra la data_inizio e data_fine sia maggiore di 7 giorni, e possibile?

  2. #2
    Ti calcoli la differenza di date desiderata (esistono un sacco di fuzioni php che permettono di calcolare la differenza tra due date - vedi php.net)
    Fai un if sul risultato e se è > 7 costruisci la SELECT che comprenda anche il prezzo_extra altrimenti (nella sezione else) fai la SELECT senza extra.

    Codice PHP:
    if (diff_date 7)
    SELECT (prezzo_1+prezzo_2+prezzo_extra) AS somma, * FROM tabella WHERE...
    else
    SELECT (prezzo_1+prezzo_2) AS somma, * FROM tabella WHERE... 

  3. #3
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select *,
    if(datediff(data_fine,data_inizio) > 7,prezzo_1+prezzo_2+extra,prezzo_1+prezzo_2) as prezzo
    from tabella

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    208
    grazie, farò delle prove.

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.