Visualizzazione dei risultati da 1 a 8 su 8

Discussione: problema query

  1. #1

    problema query

    Dove sbaglio quà???

    $query_limit = mysql_query("SELECT *,DATE_FORMAT(date,'%d/%m/%Y') as date FROM ashnews_" . "news WHERE catid = '4,7,10,13,16,19' AND (selected = '1')" . "ORDER BY date ASC LIMIT 0,3" );

    Infatti mi vengono solo visualizzate le query della categoria 4 e non delle altre...

  2. #2
    ma il campo catid è testuale?

  3. #3
    codice:
    SELECT *, DATE_FORMAT(date,'%d/%m/%Y') as date 
    FROM ashnews_news 
    WHERE catid IN (4,7,10,13,16,19) 
    AND (selected = '1')
    ORDER BY date ASC 
    LIMIT 0,3
    Hai inoltre un errore formale nel ORDER BY date. usando lo stesso nome del campo come alias questo verra' sovrascritto con il risultato di date_format e l'ordinamento avverra' su giorno-mese-anno.... senza un apparente senso logico. Cambia il nome dell'alias




    ps... ma perche' metti tutte quelle chiusure "." nella query?

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

  4. #4

  5. #5
    Infatti ho notato il problema. Scusa ma sono un pricipiante di MYSQl-PHP. Cosa significa in concreto cambiare il nome del campo alias???

    Grazie!

  6. #6
    Utente di HTML.it L'avatar di alegia76
    Registrato dal
    Mar 2003
    Messaggi
    1,179
    [supersaibal]Originariamente inviato da amonsul
    Infatti ho notato il problema. Scusa ma sono un pricipiante di MYSQl-PHP. Cosa significa in concreto cambiare il nome del campo alias???

    Grazie! [/supersaibal]
    significa che quando metti 'as date' devi mettere un altro nome per date
    Sei l'eventualità di un'anomalia che nonostante i miei più onesti sforzi non sono stato in grado di eliminare da quella che altrimenti sarebbe un'armonia di precisione matematica..

  7. #7
    [supersaibal]Originariamente inviato da amonsul
    Infatti ho notato il problema. Scusa ma sono un pricipiante di MYSQl-PHP. Cosa significa in concreto cambiare il nome del campo alias???

    Grazie! [/supersaibal]
    codice:
    SELECT *, DATE_FORMAT(date,'%d/%m/%Y') as new_date 
    FROM ashnews_news 
    WHERE catid IN (4,7,10,13,16,19) 
    AND (selected = '1')
    ORDER BY date ASC 
    LIMIT 0,3
    in pratica la data la estrarrai nel campo alias "new_date" o altro nome a tuo piacimento, mentre ORDER BY date avverra' sul campo in formato corretto yyyy-mm-dd, necessario per l'ordinamento.



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

  8. #8
    Grazie mille! Ho capito!!!

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.