2010-08-02 4 views
0

je dois la liste (et mise à jour plus tard) tous les éléments présents dans l'art de la table qui ne sont jamais référencés dans la table orders_itemslignes de mise à jour dans le tableau A Inexistant dans le tableau B

art Table


- artid - artName

Tableau orders_items
- itemID
- parentID

Si je rechercherais que par artid = itemID la requête est assez simple

select artID, itemID, artName, parentID 
FROM art 
LEFT JOIN orders_items ON artId=itemID 
WHERE stock1=0 and stock3=0 AND itemID is null 
GROUP BY artID; 

Mais le problème est que je dois regarder dans itemID ET parentID
tryed avec une sous-requête, mais il faut les âges et j'ai dû l'annuler (l'art a 30000 records et orders_items près de 200000)
Dans mon l'esprit je vois un IN() et un GROUP_CONCAT() mais je ne peux pas obtenir ceci pour fonctionner ...

Répondre

1

J'aime maintenir this post de Jeff marqué. Je ne sais pas comment cela va fonctionner, mais il semble que vous pourriez faire itemID=artID OR parentID=artID

+0

solution la plus courte possible :-) travaillé comme un charme, merci –

Questions connexes