Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867

    [SQL] Selezionare 2 articoli per categoria

    Ciao a tutti,
    Vorrei sapere se esiste un modo rapido per estrarre le informazioni che mi interessano, anche se purtroppo temo di no....

    In pratica ho svariati articoli divisi in categorie, nella tabella articoli ho a disposizione il campo id_categoria, e' possibile estrarre 2 articoli per categoria senza fare mille subquery e mille union o cose simili ?

    Grazie a tutti per il conforto che saprete apportarmi....

    No pvt per sollecitare risposte, grazie.

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923

    Re: [SQL] Selezionare 2 articoli per categoria

    Originariamente inviato da afurly
    Ciao a tutti,
    Vorrei sapere se esiste un modo rapido per estrarre le informazioni che mi interessano, anche se purtroppo temo di no....

    In pratica ho svariati articoli divisi in categorie, nella tabella articoli ho a disposizione il campo id_categoria, e' possibile estrarre 2 articoli per categoria senza fare mille subquery e mille union o cose simili ?

    Grazie a tutti per il conforto che saprete apportarmi....

    questo mio thread dovrebbe fare proprio al caso tuo

    http://forum.html.it/forum/showthrea...ght=per+gruppo

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    Ciao, finalmente ho avuto il tempo necessario per provare questo metodo.... e devo dire che è una genialata.... complimenti.

    Il fatto è che se provo tutto da phpmyadmin funziona correttamente, anche se mi dice che restituisce 0 righe e poi mi stampa correttamente i risultati.......

    Pensavo che fosse phpmyadmin ciucco, invece facendo il tutto da php mi sono reso conto che anche se la query è corretta il mysql_fetch_assoc fallisce e mi va in errore....

    Sai spiegarmi il motivo ? questa query stramba restituisce qualcosa di strambo che confonde phpmyadmin e fa arrabbiare mysql_fetch_assoc ???

    Grazie per un eventuale aiuto.

    No pvt per sollecitare risposte, grazie.

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Originariamente inviato da afurly
    Ciao, finalmente ho avuto il tempo necessario per provare questo metodo.... e devo dire che è una genialata.... complimenti.

    Il fatto è che se provo tutto da phpmyadmin funziona correttamente, anche se mi dice che restituisce 0 righe e poi mi stampa correttamente i risultati.......

    Pensavo che fosse phpmyadmin ciucco, invece facendo il tutto da php mi sono reso conto che anche se la query è corretta il mysql_fetch_assoc fallisce e mi va in errore....

    Sai spiegarmi il motivo ? questa query stramba restituisce qualcosa di strambo che confonde phpmyadmin e fa arrabbiare mysql_fetch_assoc ???

    Grazie per un eventuale aiuto.

    Con pma non l'avevo provata ma adesso per curiosità controllerò. Con mysql yog fila liscia e mi restituisce il numero corretto di righe.
    Per quel che riguarda php hai usato due query?

    Codice PHP:
    $query1 mysql_query("set @id_soc := 0, @num := 1") or die(mysql_error() );
    $query2 mysql_query("
    select * from (
    select *,
       @num := if(@id_soc = id_soc, @num + 1, 1) as riga_numero,
       @id_soc := id_soc as id
    from importi
    order by id_soc asc, valore desc) as tab where riga_numero <= 3"
    ) or die(mysql_error() );

    while (
    $row mysql_fetch_assoc($query2) ) {
    ...


  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    Si esatto, ho risolto usando 2 query separate....

    ora pero' ho trovato un'altra cosa che non mi torna...... l'ordinamento degli articoli mi viene sbagliato... poichè prima numera gli articoli e poi li ordina.... quindi non prende i primi 2 secondo l'ordinamento che gli impongo io bensì secondo l'ordine nella tabella.

    Non so se mi sono spiegato, in ogni caso mi sa che non è semplice risolvere questa cosa
    No pvt per sollecitare risposte, grazie.

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Originariamente inviato da afurly
    Si esatto, ho risolto usando 2 query separate....

    ora pero' ho trovato un'altra cosa che non mi torna...... l'ordinamento degli articoli mi viene sbagliato... poichè prima numera gli articoli e poi li ordina.... quindi non prende i primi 2 secondo l'ordinamento che gli impongo io bensì secondo l'ordine nella tabella.

    Non so se mi sono spiegato, in ogni caso mi sa che non è semplice risolvere questa cosa
    Non saprei, a me la query funzionava beni e restituiva i record secondo il criterio che gli impostavo (nello specifico i valori maggiori per ciascun gruppo del campo valore).
    Dovresti magari postare la struttura della tabella con qualche record di esempio per capirci.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.