2013-04-28 7 views
0

Я использую три таблицы, я хочу, чтобы table3 с table_1.field_id. Теперь я получаю полную запись без table_1.field_id. Как я могу включить table1.field_id с записями table_3?Получите отчет из трех таблиц sql

Запрос:

select 
    fld_id, fld_name, fld_date 
from 
    table_3 
where 
    fld_item_id in (select fld_id 
        from tbl_table2 
        where fld_cust_id in (select fld_id 
             from table_1 
             where fld_ref_id = 100)); 

Таблица3:

FLD_ID FLD_Name FLD_DATE  FLD_ITEM_ID 
101  hai 12-01-2013 10 

Таблица 2:

FLD_ID FLD_value FLD_CUST_ID FLD_DATE  
10  100  10000  12-01-2013 

Таблица 1:

FLD_ID FLD_NAME fld_ref_id FLD_DATE 
10000 Vinoth 100   12-01-2013 
+2

показать вашу схему таблицы, пожалуйста –

+2

использовать 'join', чтобы получить все соответствующие данные –

ответ

2

Try (как мотивационные по RBarryYoung)

SELECT B.fld_cust_id Table1FieldId, C.fld_id, C.fld_name, C.fld_date 
FROM tbl_table2 B 
INNER JOIN table_3 C ON C.fld_item_id = B.fld_id 
WHERE A.fld_ref_id=100 

или (Если вам нужны другие поля из table_1)

SELECT A.fld_id Table1FieldId, C.fld_id, C.fld_name, C.fld_date 
FROM table_1 A 
INNER JOIN tbl_table2 B ON B.fld_cust_id = A.fld_id 
INNER JOIN table_3 C ON C.fld_item_id = B.fld_id 
WHERE A.fld_ref_id=100 
+0

Если все, что вы хотите, это Table_1.FLD_ID, вам фактически не нужно присоединяться к нему, так как оно совпадает с таблицей_2.FLD_CUST_ID. – RBarryYoung

+0

@RBarryYoung Обновлен ответ. Благодаря... :) – Nalaka526

Смежные вопросы