2015-03-04 3 views
-1

У меня возникли проблемы с запросом sql и я ищу некоторую помощь.Объединение и суммирование таблиц в SQL

У меня есть три таблицы (таблица 1, таблица 2, таблица 3)

-From table one I have columns a/b 
-From table two I have columns c/d 
-From table three I have columns e/f 

Я объединенные столбцы A/C в колонну г и комбинированные колонки D/B в колонке ч

Теперь хотите сопоставить столбец e с столбцом h (они имеют одинаковое имя) и столбец g, сгруппированные по столбцу f. После этого я хочу сортировать его по убыванию.

Вот то, что я до сих пор

select (one.a + two.c), (one.b + two.d) 
from table_1 one, table_2 two 
inner join table_3 
on (one.b + two.d) = table_3.e 

я получаю ошибку «неверный идентификатор», который я считаю это результат не являюсь комбинированным названием (1.б + 2.d). Кто-нибудь знает, как присоединиться к двум, а затем подвести столбец g?

+0

Под «объединением» вы имеете в виду «добавление»? Это то, что делает ваш SQL. Если вы имеете в виду конкатенацию строк, используйте функцию 'CONCAT'. –

+0

Я беру один столбец длиной n и другой столбец длины m и превращая их в один столбец длиной n + m –

+0

'CONCAT (one.a, two.c)' –

ответ

0

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

select (t1.a + 2.c), (t1.b + 2.d) 
from table_1 t1, table_2 t2 
inner join table_3 
on (t1.b + t2.d) = table_3.e 
+0

Мои имена таблиц на самом деле не 1,2 , 3. извините, я изменил их, прежде чем я опубликовал –

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