Visualizzazione dei risultati da 1 a 4 su 4

Discussione: subquery ?!

  1. #1

    subquery ?!

    Ho un db mysql con i campi comune_day,comune_month,comune_year che corrispondo rispettivamente a Giorno,Mese e Anno.... dovrei impostare una query che mi selezionasse tutti i campi della tabella compresi nei valori impostati dall'utente in un form ....

    inizialmente avevo impostato una quety di questo tipo:

    Codice PHP:
    SELECT FROM `tbl_storico_comuni
    WHERE COMUNE '".$_POST['Comune']."'  
    and `comune_dayBETWEEN ".$_POST['day_from']." and ".$_POST['day_to']." 
    and `comune_monthBETWEEN ".$_POST['month_from']." and ".$_POST['month_to']." 
    and `comune_yearBETWEEN ".$_POST['year_from']." and ".$_POST['year_to']." 
    order by `comune_yearDESC, `comune_monthDESC, `comune_dayDESC 
    ma dovrei reimpostarla probabilmente con delle subquery ove seleziono e filtro prima il Comune poi seleziono e filtro l'anno poi il mese e il giorno.... ma m sono incartato nella sintassi...

    grazie per l'aiuto..

  2. #2
    Ma usare un campo DATA era troppo difficile???



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Originariamente inviato da piero.mac
    Ma usare un campo DATA era troppo difficile???


    Soprattutto che come ha fatto non puo' funzionare.

    Se la data d'inizio è 16/06/05 e quella di fine è 16/07/06, tutte le date comprese tra queste due non verranno prese.

    Non c'è via di scampo, per lavorare con delle date, bisogna lavorare con un formato AAMMGG o SSAAMMGG.

    Ad esempio, lui potrebbe fare cosi

    Assumo che i campi sono numerici

    codice:
    $dateFrom = $_POST['year_from'] * 10000 + $_POST['month_from'] * 100 + $_POST['day_from'];
    $dateTo   = $_POST['year_to']   * 10000 + $_POST['month_to']   * 100 + $_POST['day_to'];
    
    ...
    
    SELECT * FROM `tbl_storico_comuni` 
    WHERE COMUNE = '".$_POST['Comune']."'   
    and (comune_year * 10000 + comune_month * 100 + comune_day)
    BETWEEN $dateFrom and $dateTo
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #4
    Per lavorare con le date io converto tutto con mktime, è comodissimosoprattutto per le query come in questo caso.
    File Reality.sys corrupted. Reboot universe (Y/N)? Y_

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.