Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di ispuk
    Registrato dal
    Jan 2009
    Messaggi
    1,026

    problema query su 3 tabelle

    ciao ho 3 tabelle e i campi hanno tutti lo stesso nome in tutte e 3 tabelle

    devo estrarre i primi 2 campi di alcuni campi(pippo,pluto,paperino),ordinarli su un campo e limitare la selezione a 2 dati per ogni campo

    avevo pensato ad una cosa cosi:
    Codice PHP:
    $var1=mysql_query("SELECT ID,campo1,campo2,campo3,campo4
    FROM pippo AS C INNER JOIN paperino AS C INNER JOIN pluto
    ORDER BY campo3,campo4 ASC  LIMIT 5"
    ); 

    while(
    $var2=mysql_fetch_array($var1))
    {echo
    ''.$var2['campo1'];} 
    credo di star sbagliando qualcosa ho un errore di tipo:



    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\etc etc......\pagina.php on line 114

    sbaglio la query?

  2. #2
    presumo proprio di si.

    metti la segnalazione di errore alla query (mysql_query)

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

  3. #3
    Utente di HTML.it L'avatar di ispuk
    Registrato dal
    Jan 2009
    Messaggi
    1,026
    si infatti ho questo errore da mysql:

    Not unique table/alias: 'C'

    ma C deve essere un campo di valore unique che sia presente su tutte e 3 le tabelle?

    scusa ma non ho mai fatto una query multipla devo capire meglio

    grazie del supporto

  4. #4
    Originariamente inviato da ispuk
    si infatti ho questo errore da mysql:

    Not unique table/alias: 'C'

    ma C deve essere un campo di valore unique che sia presente su tutte e 3 le tabelle?

    scusa ma non ho mai fatto una query multipla devo capire meglio

    grazie del supporto
    FROM pippo AS C INNER JOIN paperino AS C INNER JOIN pluto

    AS significa ALIAS quindi tu gli dici

    chiama pippo come C
    chiama paperino come C

    chiaro che a mysql viene il mal di testa.

    puo esserti utile leggerti questa guida, almeno dove parla delle JOIN

    http://database.html.it/guide/leggi/87/guida-mysql/

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

  5. #5
    Utente di HTML.it L'avatar di ispuk
    Registrato dal
    Jan 2009
    Messaggi
    1,026
    uhm si hai proprio ragione devo darmi una bella letta,forse per adesso non ho bisogno delle JOIN ,il fatto è che i campi delle tabelle sono identici contengono solamente valori diversi ,forse faccio prima facendo 3 query distinte ,no?


  6. #6
    Originariamente inviato da ispuk
    uhm si hai proprio ragione devo darmi una bella letta,forse per adesso non ho bisogno delle JOIN ,il fatto è che i campi delle tabelle sono identici contengono solamente valori diversi ,forse faccio prima facendo 3 query distinte ,no?

    La JOIN serve a recuperare dati da tabelle che sono relazionate tra di loro almeno da un campo, cioe' contengono entrambe, almeno in un campo, un valore identico che le accomuna.

    Forse a te servirebbe piu' una UNION di una JOIN

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

  7. #7
    Utente di HTML.it L'avatar di ispuk
    Registrato dal
    Jan 2009
    Messaggi
    1,026
    esatto vedi che sbagliavo ragionamento

    hai ragione tu poichè cambiano solo i valori nei campi ma i nomi dei campi sono li stessi

    se la UNION mi permette di evitare di fare 3 query risparmiando codice direi che è proprio quella la soluzione

  8. #8
    Utente di HTML.it L'avatar di ispuk
    Registrato dal
    Jan 2009
    Messaggi
    1,026
    risolto con UNION davvero mille grazie

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.