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

Ситуация такая.
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
30.07.2009, 17:54
    #36118763
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнить 2 таблицы
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
30.07.2009, 18:21
    #36118841
olleg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнить 2 таблицы
qwertEHOK
но оно неправильно сравнивает строки

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

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

То есть скрипт должен сравнить 2 таблицы и выдать мне уволенных
...
Рейтинг: 0 / 0
30.07.2009, 19:11
    #36118935
qwertEHOK
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнить 2 таблицы
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
30.07.2009, 19:37
    #36118968
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнить 2 таблицы
qwertEHOK, вы запрос неправильный написали. Мой вариант попробовали - или пропустили?
...
Рейтинг: 0 / 0
30.07.2009, 19:39
    #36118971
qwertEHOK
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнить 2 таблицы
АнатоЛойqwertEHOK, вы запрос неправильный написали. Мой вариант попробовали - или пропустили?

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

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

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

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

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

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


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