Est-il possible de supprimer les lignes correspondantes de la requête de jointure MySQL. En fait, j'ai deux tables où j'ai stocké le pub_id, et post_id dans les deux tables, elles sont communes. Je souhaite un résultat lorsque j'interroge toutes les lignes correspondantes de table1 et que table2 ne doit pas être répertorié et que les lignes non correspondantes doivent être répertoriées uniquement.Comment faire pour supprimer les lignes correspondantes De mysql Join Résultat et montrer les lignes non-assorties?
0
A
Répondre
1
lignes de retour de la requête qui existe seulement dans l'une des deux tables:
SELECT *
FROM Table1 t1
WHERE NOT EXISTS (Select 1 from Table2 t2
Where t1.pub_id = t2.pub_id
AND t1.post_Id = t2.post_id)
UNION ALL
SELECT *
FROM Table2 t1
WHERE NOT EXISTS (Select 1 from Table1 t2
Where t1.pub_id = t2.pub_id
AND t1.post_Id = t2.post_id)
0
vous besoin de quelque chose comme ça:
SELECT * FROM tablea AS a
RIGHT JOIN tableb AS o ON a.id = o.id WHERE a.pub_id IS NULL and a.post_id is null
UNION
SELECT * FROM tablea AS a
LEFT JOIN tableb AS o ON a.id = o.id WHERE o.pub_id IS NULL and o.post_id is null
Je lance cette requête, mais il n'a pas retourné résultat exact ID SELECT comme postlist FROM wp_posts as posta O WH N'EXISTE PAS ( \t SELECT * \t FROM wp_publication_posts as pub \t O WH pub.publication_id = posta.ID et pub.post_id = posta.ID ) – janjua
Je mets à jour la requête, qu'est-ce qui ne va pas? –