Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: problema query

  1. #1

    problema query

    Ciao, ho un problema con questa query:

    codice:
    $query = "SELECT incontri.*, categorie.*, squadre.*, campi.*
    				  FROM incontri, categorie, squadre, campi
    				  WHERE incontri.giornata ='". $_POST["day"] ."'
    				  AND categorie.categoria = '". $_POST["categoria"] ."'
      				  AND incontri.idcategoria = categorie.idcategoria
      				  AND incontri.idcategoria = squadre.idcategoria
      				  AND incontri.idcategoria = campi.idcategoria
       				  AND incontri.idsquadraH = squadre.idsquadra
                                      AND incontri.idsquadraV = squadre.idsquadra
    				  AND incontri.idcampo = campi.idcampo
    				  ORDER BY data";
    		$result = mysql_query($query);
    il problema sorge con idsquadraH e idsquadraV.
    Se ne metto solo uno la query funziona, se li metto entrambi no.
    Credo vada in conflitto a causa del fatto che sia idsquadraH che idsquadraV nella tabella squadre sono identificate da idsquadra.
    Come posso risolvere?


  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    AND (incontri.idsquadraH = squadre.idsquadra
    OR incontri.idsquadraV = squadre.idsquadra)

  3. #3
    Originariamente inviato da luca200
    AND (incontri.idsquadraH = squadre.idsquadra
    OR incontri.idsquadraV = squadre.idsquadra)
    Così funziona, ma ripete due volte lo stesso risultato...

  4. #4
    questo è ciò che stampa la query:

    SELECT incontri.*, categorie.*, campi.*, squadre.*
    FROM incontri, categorie, campi, squadre
    WHERE incontri.giornata ='1'
    AND incontri.idcategoria = '3'
    AND incontri.idcategoria = categorie.idcategoria
    AND incontri.idcampo = campi.idcampo
    AND (incontri.idsquadraH = squadre.idsquadra
    OR incontri.idsquadraV = squadre.idsquadra)

    il problema è che il risultato lo ripete due volte. dove sbaglio???

  5. #5

  6. #6
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da Defly
    il problema è che il risultato lo ripete due volte.
    cioè ti escono quattro righe?

  7. #7
    Originariamente inviato da luca200
    cioè ti escono quattro righe?
    si, mi esce il risultato ripetuto due volte
    ad es:

    1 vs 2
    Lunedì 01-01-2005
    08:00:00
    Campo1

    1 vs 2
    Lunedì 01-01-2005
    08:00:00
    Campo1

    3 vs 4
    Giovedì 08-05-2005
    23:00:00
    Campo2

    3 vs 4
    Giovedì 08-05-2005
    23:00:00
    Campo2

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    non so se può fare al caso tuo, comunque, prova ad usare DISTINCT:
    SELECT DISTINCT .........

    ciao

  9. #9
    Originariamente inviato da ken84
    non so se può fare al caso tuo, comunque, prova ad usare DISTINCT:
    SELECT DISTINCT .........

    ciao
    Non so come si usa DISTINCT,
    l'unica cosa che potrei fare è raggrupparli per data e funzionarebbe, ma credo ci sia un errore di fondo se dà 4 risultati...
    Evidentemente ho sbagliato qualcosa nella query che mi sfugge.

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    prova a fare così:
    codice:
    SELECT DISTINCT incontri.*, categorie.*, campi.*, squadre.*
    FROM incontri, categorie, campi, squadre
    WHERE incontri.giornata ='1'
    AND incontri.idcategoria = '3'
    AND incontri.idcategoria = categorie.idcategoria
    AND incontri.idcampo = campi.idcampo
    AND (incontri.idsquadraH = squadre.idsquadra
    OR incontri.idsquadraV = squadre.idsquadra)
    e vedi cosa ti stampa...
    ciao

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.