Inner Join con più tabelle

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Salve, ho un problema che ho risolto solo che il problema c'è lo quando ho più tabelle da inserire nel codice.

il codice e questo ma non funziona e mi dice:
mysqli_error() expects exactly 1 parameter, 0

PHP:
SELECT utenti._user as _user, articoli_categorie._cat as _cat, articoli.* FROM utenti 
       INNER JOIN articoli
          ON utenti.ID = articoli._userid and articoli_categorie.id = articoli._catid

tab : utenti
ID
tab : articoli_categorie
tab : articoli
userID
catID
cat
ho letto questa:
http://it.wikipedia.org/wiki/Join_(SQL)
e va benissimo:

con questa query:
PHP:
SELECT utenti._user as _user, eventi.* FROM utenti 
       INNER JOIN eventi
          ON utenti.ID = eventi._userid

vedo i campi e funziona normalissimo..

ora come faccio ad mettere più tabelle?

vi ringrazio molto.
buona serata.
 
Ultima modifica:

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ho quasi risolto ma strana la cosa:

ecco la query nuova:
PHP:
SELECT utenti._user as _user , articoli_categorie.titolo as _cat, articoli.* FROM utenti 
       INNER JOIN articoli
          ON utenti.ID = articoli._userid and articoli_categorie.id = articoli._catid
ed ora ho fatto stampare l'errore a modo:
e mi dice questo:
Unknown column 'articoli_categorie.titolo' in 'field list'

come mai?
invece c'è :
PHP:
  CREATE TABLE `articoli_categorie` (
  `id` bigint(8) unsigned auto_increment,
   `titolo` varchar(255),
  `testo` longtext,
  `data` varchar(100),
  `active` int ,
  `_update` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY  (`id`));
  
  CREATE TABLE `articoli` (
  `id` bigint(8) unsigned auto_increment,
`_user` varchar(100),
  `_userid` bigint(8),
  `_cat` varchar(100),
  `_catid` bigint,
  `titolo` varchar(255),
  `testo` longtext,
  `tag` varchar(255),
  `data` varchar(100),
  `active` int ,
  `_update` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY  (`id`));

c'è qualcuno mi dice perché da quel messaggio lì.?

grazie mille.
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ok, ho sbagliato io la query che stavo modificando ...
cosi funziona:
PHP:
"SELECT utenti._user as _user , articoli_categorie.titolo as categoria , articoli.* FROM utenti 
       INNER JOIN articoli 
          ON utenti.id = articoli._userid INNER JOIN articoli_categorie
          ON articoli_categorie.id = articoli._catid

perché modificavo la query del controllo dei record se ci sono o non ci sono invece dovevo modificare la query che fa la paginazione

Poi un problema e la query con il where.
mi dite come faccio a passare il parametro ?userid=1 etc..
nella query:
PHP:
else if($_GET["userid"]){
         $userid = $_GET["userid"];
        $pag = new Paginazione("SELECT utenti._user as _user, articoli_categorie.titolo as categoria , articoli.* FROM utenti 
       INNER JOIN articoli
          ON utenti.id = articoli._userid , articoli_categorie.id = articoli._catid WHERE utenti.id = ".$userid."",10, "pagina");
    }
cosi mi da questo errore:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '._catid WHERE utenti.id = 1' at line 3

grazie mille.
buona serata.
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ho risolto:
PHP:
else if($_GET["userid"]){
         $userid = $_GET["userid"];
        $pag = new Paginazione("SELECT utenti._user as _user , articoli_categorie.titolo as _cat , articoli.* FROM utenti 
       INNER JOIN articoli 
          ON utenti.id = articoli._userid INNER JOIN articoli_categorie
          ON articoli_categorie.id = articoli._catid  WHERE articoli._userid = ".$userid."",10, "pagina");
    }

grazie mille.
 
Discussioni simili
Autore Titolo Forum Risposte Data
L Soluzione con INNER JOIN Database 0
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
A Count Inner Join e stampa record con id non duplicati PHP 1
A Inner join con tre tabelle PHP 0
cosov Problema con INNER JOIN Classic ASP 1
K Problema Inner join PHP 1
S [PHP] Inner join su 4 tabelle PHP 6
M [PHP] Aiuto su inner join PHP 10
P [MySQL] Inner Join o Left Join MySQL 14
simgia [MySQL] INNER JOIN problema MySQL 0
R [MySQL] SQL UPDATE INNER JOIN MySQL 5
jdj78 inner join Classic ASP 18
D Problema sintassi INNER JOIN a 3 tabelle PHP 4
L inner join MySQL 0
I Aiuto INNER JOIN MySQL 5
L inner join su due tabelle PHP 5
P Inner join ? MS Access 1
c.ronaldo Inner join Database 1
S Stampare il risultato di una query inner jon in php.... PHP 4
metalgemini codice dinamico con inner.HTML o cosa? Javascript 8
M LEFT JOIN di diverse condizioni PHP 10
R Join articolato su 3 tabelle MySQL 5
M Join 3 tabelle PHP 0
L select join e sottrazione punti PHP 13
M Problema su query JOIN in tre tabelle PHP 0
MarcoGrazia Dati nulli su join tra più tabelle MySQL 1
M Ordinare una query join PHP 2
M Estrarre valori MAX da un db con una left join MySQL 8
P Query Mysql con Join PHP 2
F [MySQL] Problema con LEFT JOIN MySQL 6
simgia [PHP] Ciclare una query JOIN PHP 2
R [PHP] Estrapolare dati da una query left join PHP 0
C Php/Mysql query JOIN tra tabelle PHP 4
C Php/Mysql query JOIN tra due tabelle PHP 18
G [MS Access] JOIN di due tabelle più GROUP BY MS Access 1
G [MySQL] Join o select MySQL 1
R [MySQL] Join, Count e Order (ASC & DESC)... MySQL 6
B Outer join che non funge Database 2
V [Guida]: ho dubbi sulle Join MySQL 13
P Query con Somma di un Campo , aggregazione e join Database 3
V Quando mettere il JOIN e quando no? MySQL 1
L cinque tabelle e join PHP 2
P Join tabelle MySQL 4
Marco_88 Select distinct e join MySQL 2
Marco_88 Eliminare una colonna da una LEFT JOIN MySQL 4
M Query Join per 2 colonne MySQL 1
andrea.peo Problema query con join visualizzazione record ripetuti PHP 5
D Il JOIN che non imparerò mai ad usare MySQL 2
V Problema JOIN SQL PHP 3

Discussioni simili