Ciao a tutti,
Come ho scritto nel titolo sto cercando di realizzare una query tra tre tabelle, quest'ultime sono la creazione dell'installazione di wordpress.
Avevo pensato di utilizzare l'inner join ma tra tre tabelle non saprei da dove iniziare e cosi ho pensato ad unire le tre tabella con la clausola union e poi impostare un where che ricavi il tutto.
Questa è la query che sto utilizzando
Codice PHP:
SELECT * FROM wp_posts AS post UNION SELECT relation.object_id
FROM wp_term_relationships AS relation UNION SELECT meta.meta_value
FROM wp_postmeta AS meta
WHERE post.ID=relation.objcet_id AND term_taxonomy_id='70' AND meta.post_id=post.ID
Purtroppo viene indicato il seguente errore
#1222 - The used SELECT statements have a different number of columns
Altrimenti se trovo qualcuno di voi che mi spiega come creare un inner join tra tre tabelle utilizzo la seguenti query che funziona benissimo.
Codice PHP:
SELECT post.ID AS ID,post.post_title AS post_title,post.post_content AS post_content, post.guid as link
FROM wp_posts AS post INNER JOIN wp_term_relationships AS relation
WHERE post.ID=relation.object_id AND post.post_status='publish' AND term_taxonomy_id='70' ORDER BY post.post_date DESC
Vi vado a indicare cose devo estrapolare:
- post con la stato pubblico
- post che abbiano la categoria xxx
- ricavare il meta tag del post, in questo modo posso ricavare l'immagine associata all'articolo
Grazie di tutto...