D'où la clause de vérifier à l'encontre de deux colonnes dans une autre table

J'ai du mal à obtenir cette réponse pour une raison quelconque.

J'ai deux tables table1 et table2 qui ressemble à ceci:

Table1:

ID   Location  Warehouse
1    London    Narnia
2    Cyprus    Metro
3    Norway    Neck
4    Paris     Triumph

Table2:

ID   Area      Code
1    London    Narnia
2    Cyprus    Metro
3    Norway    Triumph
4    Paris     Neck

J'ai besoin d'abord de sélectionner tous les éléments de la table table1 où table1.Location est dans table2.Area ET table1.Warehouse est dans table2.Code étant DONNÉ QUE table1.Location est dans table2.Area. I. e. Je veux:

ID   Location  Warehouse
1    London    Narnia
2    Cyprus    Metro

J'ai:

select
  1.location
, 1.warehouse
from table1 1
where 1.location in (select area from table2)
and 1.warehouse in (select code from table2)

Mais cela ne marchera pas, parce que j'ai besoin de la deuxième clause where pour être exécuté sur la base de la première clause where holding vrai.

J'ai aussi essayé similaire requêtes avec des jointures en vain.

Est-il un moyen simple de faire cela?

InformationsquelleAutor Johnathan | 2015-09-30