Как LibreOffice Base запрос сравнения 3 таблиц переделать в LibreOffice Calc?

Автор Evtihij, 24 мая 2020, 07:39

0 Пользователи и 1 гость просматривают эту тему.

Evtihij

Доброе утро, подскажите, как сравнить 3 таблицы в LibreOffice Calc?

В LibreOffice Base запрос qryOASUPFired выглядит так:
SELECT DISTINCT "tblOld"."У", "tblNew"."У", "tblOld"."Таб.N", "tblOld"."ФИО", "tblOld"."Уч-к/ Отдел", "tblOld"."Должность/Профессия", "tblNew"."Должность/Профессия" FROM "tblNew", "tblOld", "tblOASUP" WHERE "tblNew"."Таб.N" = "tblOld"."Таб.N" AND "tblOASUP"."Таб.N" = "tblOld"."Таб.N" AND "tblOld"."У" <> "tblNew"."У"

Запрос qryOASUPPosition выглядит так:
SELECT DISTINCT "tblOld"."У", "tblNew"."У", "tblOld"."Должность/Профессия", "tblNew"."Должность/Профессия", "tblOld"."Таб.N", "tblOld"."ФИО", "tblOld"."Уч-к/ Отдел" FROM "tblNew", "tblOld", "tblOASUP" WHERE "tblNew"."Таб.N" = "tblOld"."Таб.N" AND "tblOASUP"."Таб.N" = "tblOld"."Таб.N" AND "tblOld"."Должность/Профессия" <> "tblNew"."Должность/Профессия"

economist

Два подхода:

1) Решаем где сам чек-лист (например new), и пишем запрос с Left Outer Join двух других таблиц, сохраняем, результат запроса вытаскиваем в Calc через Ctrl+Shift+F4.

2) Вытаскиваем все три таблицы на разные листы в Calc через Ctrl+Shift+F4 и банальной функцией =ВПР() или =VLOOKUP() вытаскиваем к таблице new правее (да хоть к любой) список табномеров из 2-х других. Где будет #Н/Д - значит такой строки нет.

Кстати, категорически не советую в имена полей включать символ № - замените на N. Некоторое число утилит, расширений итп споткнутся на этом символе. 
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

Evtihij

Спасибо за советы!
У меня в планах вернуться к этому вопросу летом, если мне снова дадут студентов, чтоб им было над чем задуматься. Также в планах перенести этот вопрос в тему "Calc". Очень понравилось расширение "Удалить дубликаты", хоть и не совсем то, по сути мне нужно просто удалить дубликаты. Хотя наверно все же предпочтение у формулы, когда нужно просто введу формулу, похожую на эту (Извлечение уникальных элементов из диапазона.ods), и она найдет мне отличия.