Query Mysql con Join

  • Creatore Discussione Creatore Discussione Phelps
  • Data di inizio Data di inizio

Phelps

Utente Attivo
17 Dic 2018
50
0
6
Ciao ragazzi mi serve una mano nel contruire questa sql

Ho due tabelle una users con
id |name| email| user_image| password| created_at
e una posts
id |titolo| body| section| user_id| created_at

In un model con la seguente query riesco nella view posts ad accedere anche alle informazioni dell 'user
PHP:
public function getPosts()
{
$this->db->query('SELECT * ,
posts.id as postId,
users.id as userId,
posts.created_at as postCreated,
users.created_at as userCreated
FROM posts
INNER JOIN users
ON posts.user_id = users.id
ORDER BY posts.created_at DESC
');
$results = $this->db->resultSet();
return $results;

Ora invece devo fare una cosa diversa... Invece di avere un ritorno di tutti i posts che stanno nel database, voglio avere i posts che hanno una determinata categoria, ma allo stesso tempo accedere anche hai dati del suo user. in pratica nella query di sopra non so dove inserire WHERE section = php , per esempio.

Ho un sistema MVC quindi con una call_user_func_array riesco a leggere da url il parametro da passare al metodo getPosts(), che poi dovrebbe scriverlo nella WHERE...

Dove piazzo la where?
Grazie
 
le clausole che seguono la "ON" agiscono sulla tabella users

le clausole che seguono la "where", messa in fondo prima di "order by", agiscono sulla tabella "posts"
 

Discussioni simili