powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Сравнить 2 таблицы
10 сообщений из 10, страница 1 из 1
Сравнить 2 таблицы
    #36118689
qwertEHOK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извините за простой вопрос. Поиск в яндексе ответа не дал. Скорее всего я просто не там ищу

Ситуация такая.
SCO Unix 5.5, Informix 7.1

Есть таблица client в ней есть столбец FIO, где хранится ФИО клиентов из определенной организации
Есть таблица clN (N - Номер организации), есть 3 столбца - name, name1 и sname, где хранятся ФИО клиентов из их организации

Нужно выгрузить в файл те фамилии из clN которых нет в client

Код: plaintext
1.
2.
3.
4.
5.
echo "
UNLOAD TO 123.unl
SELECT c.name
FROM client c, cl308105 cl
WHERE upper(c.name)!=upper(TRIM(cl.name) || ' ' || TRIM(cl.name1) || ' ' || TRIM(cl.sname))
      order by 1" | dbaccess -e baza  1 >> 1 .err  2 >> 1 .err

пытался вот так сделать, но оно неправильно сравнивает строки

ЗЫ сильно не ругайте
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36118763
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwertEHOKЕсть таблица client в ней есть столбец FIO, где хранится ФИО клиентов из определенной организации
Есть таблица clN (N - Номер организации), есть 3 столбца - name, name1 и sname, где хранятся ФИО клиентов из их организации

Нужно выгрузить в файл те фамилии из clN которых нет в client


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
echo "
UNLOAD TO 123.unl
SELECT TRIM(cl.name) || ' ' || TRIM(cl.name1) || ' ' || TRIM(cl.sname)
FROM cl308105 cl
WHERE NOT EXISTS(
  SELECT NULL 
     FROM client 
      WHERE upper(TRIM(c.FIO)) = 
                 upper(TRIM(cl.name) || ' ' || TRIM(cl.name1) || ' ' || TRIM(cl.sname))
)
      order by 1" | dbaccess -e baza  1 >> 1 .err  2 >> 1 .err
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36118841
olleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qwertEHOK
но оно неправильно сравнивает строки

Может NULL в отчествах?
Или вместо русских букв - латинские с таким же написанием(Н, Р и пр.)?
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36118850
qwertEHOK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну это выбирает, но не всех
Выбрало 13 человек только

У нас в базе в списке 249 человек
У них всего 520 из которых 249 работает, а остальные уволенные

То есть скрипт должен сравнить 2 таблицы и выдать мне уволенных
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36118935
qwertEHOK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
olleg,

из нашей базы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
АБАКУМОВ БОРИС АЛЕКСАНДРОВИЧ
АБДУЛИНА КАРЛГАШ КУМАРОВНА
АБДУЛОВА РУФИЯ КАБИРОВНА
АБРАМОВА НАТАЛИЯ ИВАНОВНА
АЗАРОВА ЕКАТЕРИНА СЕРГЕЕВНА
АЛЕКСАНДРОВА ОЛЬГА НИКОЛАЕВНА
АНАНЬЕВА ИРИНА НИКОЛАЕВНА
АНИЩУК ТАТЬЯНА ИВАНОВНА
АНТРОПОВА ЛАРИСА АЛИАГАЕВНА
АСТАФУРОВА ТАТЬЯНА НИКОЛАЕВНА
БАЕВ РУСТАМ РУСЛАНОВИЧ
БАЖАНОВА ТАТЬЯНА ВЛАДИМИРОВНА
БАЛТАКОВА ЗУЛЬФИЯ ТАСТАНОВНА
БАРИНОВ АНАТОЛИЙ ВАСИЛЬЕВИЧ
БЕЛОВА ОЛЕСЯ АЛЕКСАНДРОВНА

из базы клиента
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
АБАКУМОВ                                │БОРИС               │АЛЕКСАНДРОВИЧ
АБДУЛИНА                                │КАРЛГАШ             │КУМАРОВНА
АБДУЛОВА                                │РУФИЯ               │КАБИРОВНА
АБЕЗИНА                                 │СВЕТЛАНА            │ГЕОРГИЕВНА
АБРАМОВА                                │НАТАЛИЯ             │ИВАНОВНА
АГАПОВА                                 │ЛЮБОВЬ              │МИХАЙЛОВНА
АЗАРОВА                                 │ЕКАТЕРИНА           │СЕРГЕЕВНА
АКЖИГИТОВА                              │РУМИЯ               │САДЫКОВНА
АЛЕКСАНДРОВА                            │ОЛЬГА               │НИКОЛАЕВНА
АЛЕКСЕЕВА                               │ВИКТОРИЯ            │АНАТОЛЬЕВНА
АЛЕКСЕЕВА                               │ВИКТОРИЯ            │АНАТОЛЬЕВНА
АЛЕШИНА                                 │ЛЮДМИЛА             │ПЕТРОВНА
АЛЯБЬЕВ                                 │ДЕНИС               │НИКОЛАЕВИЧ
АНАНЬЕВА                                │ИРИНА               │НИКОЛАЕВНА

ЗЫ имена и отчества поменял местами. клиенты все таки
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36118968
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwertEHOK, вы запрос неправильный написали. Мой вариант попробовали - или пропустили?
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36118971
qwertEHOK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
АнатоЛойqwertEHOK, вы запрос неправильный написали. Мой вариант попробовали - или пропустили?

пробовал, выдает 13 фамилий из всего списка
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36120139
olleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
АБЕЗИНА СВЕТЛАНА ГЕОРГИЕВНА
АГАПОВА ЛЮБОВЬ МИХАЙЛОВНА
АКЖИГИТОВА РУМИЯ САДЫКОВНА
АЛЕКСЕЕВА ВИКТОРИЯ АНАТОЛЬЕВНА
АЛЕКСЕЕВА ВИКТОРИЯ АНАТОЛЬЕВНА
АЛЕШИНА ЛЮДМИЛА ПЕТРОВНА
АЛЯБЬЕВ ДЕНИС НИКОЛАЕВИЧ

У меня Все эти люди присутствуют в результате SQL Запроса от АнатоЛой.
А у вас?
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36120185
qwertEHOK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ollegАБЕЗИНА СВЕТЛАНА ГЕОРГИЕВНА
АГАПОВА ЛЮБОВЬ МИХАЙЛОВНА
АКЖИГИТОВА РУМИЯ САДЫКОВНА
АЛЕКСЕЕВА ВИКТОРИЯ АНАТОЛЬЕВНА
АЛЕКСЕЕВА ВИКТОРИЯ АНАТОЛЬЕВНА
АЛЕШИНА ЛЮДМИЛА ПЕТРОВНА
АЛЯБЬЕВ ДЕНИС НИКОЛАЕВИЧ

У меня Все эти люди присутствуют в результате SQL Запроса от АнатоЛой.
А у вас?

А у меня нет почему то
Результат начинается с "В"...

Странно. Буду проверять.
...
Рейтинг: 0 / 0
Сравнить 2 таблицы
    #36184373
skill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwertEHOK,

проверь что у тебя в обоих таблицах фамилии начинаются с русской "А"
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Сравнить 2 таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]