2016-06-28 2 views
0

У меня есть две таблицы, и я пытаюсь сделать объединение или союз, чтобы вывести один столбец со второй таблицы.Как присоединиться к моим двум таблицам?

SELECT Services,Metric_Type,services_be,Services_Be_L2,Services_Be 
FROM table1 
JOIN table2 
ON table1.SERVICES_BE = table2.SERVICES_BE 

Metric_Type все, что мне нужно от table2

Потенциал присоединяется

Table1

Services_Be, 
SALES_NODE_LEVEL1, 
Fiscal QT, 
Fiscal YR, 

Table2

Services_Be, 
Sales_L1 = SALES_NODE_LEVEL1, 
Fiscal QT, 
Fiscal YR 
+0

0: Каковы результаты и как они отличаются от ожидаемых? – mustaccio

+0

Столбцы Services и Metric_Type отсутствуют в двух таблицах. Где эти столбцы ?. – scaisEdge

+0

текущий запрос не работает по какой-то причине Mustaccio и Scais Edge Metric_Type живет только во второй таблице – user2414973

ответ

0
SELECT Services,Metric_Type,services_be,Services_Be_L2,Services_Be 
FROM table1 
JOIN table2 
ON table1.SERVICES_BE = table2.SERVICES_BE 

Выглядит как действительное соединение, и это позволит вам использовать столбцы из обоих таблиц бок о бок. Единственное, что вы можете использовать это псевдонимы таблиц, чтобы сделать его проще ссылаться на таблицу, а затем конкретно определить таблицу ваш столбец из вВыберите списка что-то вроде:

SELECT t1.Services,t1.Metric_Type,t1.services_be,t2.Services_Be_L2,t2.Services_Be 
    FROM table1 t1 
    JOIN table2 t2 
    ON t1.SERVICES_BE = t2.SERVICES_BE 

Если вы хотите APPEND записей из одной таблицы в другое вы хотите использовать UNION или UNION ALL

SELECT 
    Services_Be, 
    SALES_NODE_LEVEL1, 
    Fiscal QT, 
    Fiscal YR 
FROM 
    Table11 

UNION ALL 

SELECT 
    Services_Be, 
    SALES_NODE_LEVEL1, 
    Fiscal QT, 
    Fiscal YR 
FROM 
    Table12 

При добавлении, определение столбцов и типы данных должны быть одинаковыми между верхней и нижней таблицей. UNION ALL добавит каждую запись от Table2, в то время как UNION будет добавлять только записи, которые еще не присутствуют в Table1 (Вид вроде DISTINCT).

+0

Союз не работает, даже когда я вставил значения NULL в качестве фиктивных столбцов, и когда я делаю соединение, независимо от типа соединения, я делаю либо получаю Metric_type, ни ничего другого или всего, кроме null для metric_type. – user2414973

+0

Вы хотите добавить данные? Вы используете только Union или UNION ALL. Если UNION, возможно, потребуется обработать нулевое число, равное количеству раз null, не сравниваются, как вы думаете, что они могут быть. Вы получаете конкретную ошибку, можете ли вы отредактировать вопрос и опубликовать код, который вы попробовали, чтобы мы могли смотреть прямо на него, чтобы дать отзыв? – Matt

0

Я думаю, что это столбец с неопределенной ошибкой. В операторе select вы указываете поле SERVICES_BE, которое принадлежит обеим таблицам, а парсер sql не знает, какую таблицу вы имели в виду. попробуйте использовать псевдоним таблицы.

SELECT t1.Services,t2.Metric_Type,t1.services_be,t1.Services_Be_L2,t1.Services_Be 
    FROM table1 t1 
Inner JOIN table2 t2 ON t1.SERVICES_BE = t2.SERVICES_BE