2015-09-09 3 views
1

Я довольно новичок в базе OpenOfffice, но не в SQL.База OpenOfffice, вставляющая результаты объединения в таблицу

Я хочу вставить в таблицу результаты соединения. Он работает в простом случае:

insert into "tbl1" ("last_name", "first_name") 
select "last_name", "first_name" from "contacts" 

, но НЕ с

insert into "tbl1" ("last_name", "first_name") 
select "contacts.last_name", "contact2.first_name" 
from "contacts" INNER JOIN "contact2" 
    on "contacts.last_name" = "contact2.last_name" 
    and "contacts.first_name" = "contact2.first_name" 

Я получаю эту ошибку:

 
1: Column not found: contacts.last_name in statement 
[insert into "tbl1" ("last_name", "first_name") select 
"contacts.last_name", "contact2.first_name" from "contacts" 
inner join "contact2" on "contacts.last_name" = "contact2.last_name" 
and "contacts.first_name" = "contact2.first_name"] 

Но contacts.last_name существует и заполняется данными.

Я проверил документы и не вижу их, поэтому я надеюсь, что кто-то предоставит то, что должно быть простым ответом. Также я хотел бы знать, как я могу написать результаты (вместо вставки) в файл csv. Я думаю, что предложение INTO TEXT возражает против соединения.

Спасибо.

ответ

1

Вам нужен дополнительный набор двойных кавычек на каждой из двух частей ссылки на столбец - имя таблицы и имя столбца получить цитируемый индивидуально "contacts"."last_name"

Edit: Как я знаю, чтобы получить файл CSV для запроса является для импорта результатов запроса в Calc, а затем сохранить файл Calc как CSV. См. Это руководство по импорту базовых запросов (или таблиц) в Calc: [Tutorial] Using registered datasources in Calc

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