la mera existencia:
Las combinaciones se pueden formular en una sintaxis explícita ([INTERIOR | left | EXTERIOR | ..] JOIN ... EN ...) o especificar las condiciones en la declaración WHERE.
¿Cómo puedo referir a una tabla llamada externa en el FROM y unirse a ella en la subconsulta?
En este caso me refiero a la mesa con el alias p
SELECT
p.id,
p.post_title,
(SELECT
GROUP_CONCAT(DISTINCT wp_terms.name
SEPARATOR ',')
FROM
p
JOIN
wp_term_relationships ON (p.id = wp_term_relationships.object_id)
LEFT JOIN
wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
LEFT JOIN
wp_terms ON (wp_terms.term_id = wp_term_taxonomy.term_id)
AND wp_term_taxonomy.taxonomy IN ('post_tag' , 'category'))
FROM
`post_senza_revisioni` p
WHERE
p.post_type = 'post'
AND p.post_status = 'publish'
AND p.post_parent = 0
GROUP BY id , post_title
Gordon Linoff:
Estoy bastante seguro de que quiere una consulta correlacionada:
SELECT p.id, p.post_title,
(SELECT GROUP_CONCAT(DISTINCT wp_terms.nameSEPARATOR ',')
FROM wp_term_relationships tr
wp_term_taxonomy tt
ON tr.term_taxonomy_id = tt.term_taxonomy_id LEFT JOIN
wp_terms t
ON t.term_id = tt.term_id AND
tt.taxonomy IN ('post_tag' , 'category'))
WHERE p.id = r.object_id
)
FROM `post_senza_revisioni` p
WHERE p.post_type = 'post' AND
p.post_status = 'publish' AND
p.post_parent = 0;
Dudo que GROUP BY
se necesita en la consulta externa, por lo que se lo quité. Si usted tiene duplicados id
valores de la p
tabla, a continuación, se puede añadir de nuevo en - a pesar de que sugiere que id
es un mal nombre para la columna.