2013-05-03 7 views
0

У меня есть две таблицы:Как извлечь данные из 2-х разных таблиц в MySQL

Subscriber_detail 

SubscriberID | Merchant_ID 
23   | 24 

User_Detail 

User_ID | User_RegisteredID 

23  | 1001001 
24  | 1001002 

нужно извлечь User_RegisteredID из User_Login таблицы для SubscriberID and Merchant_ID from Subscriber_Detail

+1

Почему люди не Google эти вещи? – Jared

+1

@ Jared bcoz Мы, люди, всегда здесь, чтобы комментировать и отвечать на такие вопросы;) – swapnesh

+2

@swapnesh Наверняка об этом здесь ответили ... – Jared

ответ

1
SELECT sub.User_RegisteredID AS SubscriberRegisteredID, 
     mer.User_RegisteredID AS MerchantRegisteredID 
FROM Subscriber_detail s 
     JOIN User_Detail sub on s.SubscriberID = sub.User_ID 
     JOIN User_Detail mer ON s.Merchant_ID = mer.User_ID 

Вы должны объединять обе таблицы и таблицы User_Detail должно быть объединено два раза, потому что в таблице Subscriber_detail есть два столбца, на которые они ссылаются.

Если один столбец NULLABLE, LEFT JOIN следует использовать вместо этого.

SELECT sub.User_RegisteredID AS SubscriberRegisteredID, 
     mer.User_RegisteredID AS MerchantRegisteredID 
FROM Subscriber_detail s 
     LEFT JOIN User_Detail sub on s.SubscriberID = sub.User_ID 
     LEFT JOIN User_Detail mer ON s.Merchant_ID = mer.User_ID 
Смежные вопросы