Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    SELEZIONARE 2 record di un tipo e 2 di un altro

    Ciao a tutti,
    Ho una tabella in Mysql che contiene l'elenco di alcune persone, divise per sesso M - F
    Nella pagina dovrei ora selezionare RANDOM 2 Maschi e 2 Femmine

    Devo fare 2 query per forza o c'è un'alternativa?
    MITTICCOOOOOOOOO!

  2. #2
    penso tu possa farlo con UNION, ma tanto vale fare 2 query diverse, tanto non penso sprechino poi tanta memoria

    http://dev.mysql.com/doc/mysql/en/union.html

    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  3. #3
    Thx ora provo...

    Non è che per caso sai come paginare i record in questa maniera?


    MASCHIO
    DONNA
    DONNA
    MASCHIO

    ?

    MITTICCOOOOOOOOO!

  4. #4
    con una sola query la vedo un pò dura.
    se ne fai una sola puoi prendere:
    MASCHIO
    FEMMINA
    FEMMINA

    con questa query:

    codice:
    (
    SELECT * 
    FROM `tabella` 
    WHERE `sesso` = 'M'
    LIMIT 1 
    )
    UNION (
    
    SELECT * 
    FROM `tabella` 
    WHERE `sesso` = 'F'
    LIMIT 2 
    )
    e l'ultimo dato lo devi prendere con una seconda query, perché aggiungendo alla fine un'altra UNION identica alla prima SELECT il risultato non cambia!

    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  5. #5
    IO HO FATTO

    (
    SELECT *
    FROM `tabella`
    WHERE `sesso` = 'M'
    LIMIT 2
    ORDER BY RAND()
    )
    UNION (

    SELECT *
    FROM `tabella`
    WHERE `sesso` = 'F'
    LIMIT 2
    ORDER BY RAND()
    )

    mi viene

    MASCHIO
    MASCHIO
    FEMMENA
    FEMMENA

    non c'è modo di cambiare l'ordine
    MASCHIO
    FEMMENA
    FEMMENA
    MASCHIO

    quando uso il ciclo per visualizzarlo sulla pagina?
    MITTICCOOOOOOOOO!

  6. #6
    invece della UNION fai due query.

    $res1 = M e $res2 = F => mysql_query.

    codice:
    $row1 = mysql_fetch_array($res1);
    echo "row1[nome_maschio]";
    
    while($row2 = mysql_fetch_array($res2))  {
    
    echo "row2[nome_femmina]";
    
    }
    
    $row1 = mysql_fetch_array($res1);
    echo "row1[nome_maschio]";


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

  7. #7
    In effetti bastava ragionarci un po

    Ti correggo PIERO

    il tuo ultimo maschio è lo stesso del primo

    GINO
    PAOLA
    MARTA
    GINO

    io ho fatto cosi

    Codice PHP:
    do{
    echo 
    "$row_maschio[nik]

    "
    ;
    do{
    echo 
    "$row_femmina[nik]

    "
    ;
    }while (
    $row_femmina mysql_fetch_assoc($femmina));
    }while (
    $row_maschio mysql_fetch_assoc($maschio)); 
    MITTICCOOOOOOOOO!

  8. #8
    ho scordato di "spingere" avanti l'array...

    mysql_data_seek($row1, 1);

    pazienza...

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

  9. #9
    Mi hai comunque dato la scintilla per capire

    THX
    MITTICCOOOOOOOOO!

  10. #10
    Scusami Piero...
    Sapresti dirmi perche con

    Codice PHP:
    do{ 
    echo 
    "$row_maschio[nik]

    "

    do{ 
    echo 
    "$row_femmina[nik]

    "

    }while (
    $row_femmina mysql_fetch_assoc($femmina)); 
    }while (
    $row_maschio mysql_fetch_assoc($maschio)); 
    Mi vengono fuori 5 record

    cioè

    MASCHIO
    FEMMINA
    FEMMINA
    MASCHIO
    RECORD VUOTO

    ?? :master:
    MITTICCOOOOOOOOO!

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.