Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / вывод / 25 сообщений из 30, страница 1 из 2
01.11.2012, 23:31
    #38022562
вывод
имеется курсор К1 с полями фамилия, имя, номер, серия. и другой курсор К2 с такими же полями. нужно вывести в третий курсор К3 данные из курсора К1 и поля номер и серия из курсора К1. Как это сделать? То есть мне нужно чтобы в курсоре К3 были данные из К1 и соответствующие им номер и серия из К2. помогите новичку
...
Рейтинг: 0 / 0
02.11.2012, 00:04
    #38022583
reware
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Начинающий0595имеется курсор К1 с полями фамилия, имя, номер, серия. и другой курсор К2 с такими же полями. нужно вывести в третий курсор К3 данные из курсора К1 и поля номер и серия из курсора К1. Как это сделать? То есть мне нужно чтобы в курсоре К3 были данные из К1 и соответствующие им номер и серия из К2. помогите новичку
Алё, на бронекатере. Опять курсовой проект ? Ты наверно не дочитал книжку до конца, где говорится, что курсор есть всего-лишь ВРЕМЕННАЯ таблица, с которой можно обращаться (почти) как с обычным DBF. Т.е. применять к нему SELECT-SQL, SET RELATION, SEEK, INDEX ON и пр. После закрытия курсора он самоуничтожается. Ну нарисуй себе SELECT-SQL, чтобы вывести в третий курсор К3 данные из курсора К1 и поля номер и серия из курсора К1. Али так сложно ?
...
Рейтинг: 0 / 0
02.11.2012, 06:37
    #38022689
вывод
reware, я не программирую на фокспро почти. мне такой код просто нужен . можете помочь?
...
Рейтинг: 0 / 0
02.11.2012, 06:40
    #38022692
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Читайте http://www.sql.ru/forum/actualthread.aspx?tid=940953
ЕслиНачинающий0595мне такой код просто нужен, то это путь 1.
...
Рейтинг: 0 / 0
02.11.2012, 06:50
    #38022698
вывод
прочитал статью по ссылке)) я свой код не выложил потому что он не выдает результата: вот код мой и судя по всему корявый

Select к1.фамилия,к1.имя, к1.номер, к2.серия as c,к2.номер as н from k1,k2 from k1.номер=к2.номер and к1.серия=к2.серия

такой код правильно будет работать или нет? я правильно пишу?
...
Рейтинг: 0 / 0
02.11.2012, 06:58
    #38022699
вывод
вместо второго from надо where
...
Рейтинг: 0 / 0
02.11.2012, 07:14
    #38022700
вывод
ну ответьте пожалуйста, я правильный по логике код пишу?
...
Рейтинг: 0 / 0
02.11.2012, 07:39
    #38022703
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Начинающий0595, по синтаксису правильный (хотя лучше писать через джойн), а что касается логики, так вы ведь не озвучили, каким образом связаны 1 и 2 таблицы...
...
Рейтинг: 0 / 0
02.11.2012, 08:13
    #38022717
вывод
tanglir, Они связаны в основном по полям номер и серия.
...
Рейтинг: 0 / 0
02.11.2012, 08:15
    #38022718
вывод
и мне нужно вывести из курсора к2 поля номер и серия соответствующие человеку из курсора к1
...
Рейтинг: 0 / 0
02.11.2012, 08:24
    #38022731
вывод
через джойн как сделать напишите если не трудно, а то я в джойн путаюсь
...
Рейтинг: 0 / 0
02.11.2012, 09:53
    #38022802
reware
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Начинающий0595reware, я не программирую на фокспро почти. мне такой код просто нужен . можете помочь?
Опять старая песня "я не программирую на фокспро". А какого хрена лезешь в форумы фокспрошеиков ? Вот видите ли нужен ему некий код. Это чего, нынче общепринято, ну, там код (мегов на 10) или библ какой запонибратски попросить ?
...
Рейтинг: 0 / 0
02.11.2012, 09:59
    #38022808
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Начинающий0595tanglir, Они связаны в основном по полям номер и серия.1)а не в основном?
2)а смысл тогда выводить номер-серию из 2-й таблицы, если они такие же, как и в первой?
3)вы опять идёте по первому пути...
...
Рейтинг: 0 / 0
02.11.2012, 10:48
    #38022900
вывод
tanglir, смысл в том что нужно вывести данные из курсора 1 и рядом номер и серию из второго чтобы проверить несоответствие. номеров. чтобы было наглядно видно у какого человека расхождение в номере. Я неправильно кажется вам объяснил.

в третьем курсоре нужно вывести рядом с полем номер поле номер из к2 соответствующий этому человеку.
...
Рейтинг: 0 / 0
02.11.2012, 11:20
    #38022966
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Короче, либо вы показываете тестовые данные и желаемый результат (пользуйтесь тегом [ csv ]), либо помощи, скорее всего, не дождётесь.
...
Рейтинг: 0 / 0
02.11.2012, 11:46
    #38023050
вывод
tanglir, вот таблицы две выкладываю.. нужно в курсор или таблицу вывести данные из таблицы1 и поле номер из второй таблицы соответствующий этому человеку
...
Рейтинг: 0 / 0
02.11.2012, 12:09
    #38023112
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Начинающий0595соответствующийкритерий соответствия - тайна?
Но если это соответствие - совпадение номера и серии, то спрашиваю ещё раз - какой смысл выводить номер/серию из таблицы2, если они совпадают с данными таблицы1?
...
Рейтинг: 0 / 0
02.11.2012, 12:18
    #38023136
вывод
tanglir, в базе может быть так что номер вписали неверно, а из другой компании приходит файл где другой номер у этого же человека. поэтому нужно выводить рядом их.. Критерий соответствия фамилия, имя и номер, серия.
...
Рейтинг: 0 / 0
02.11.2012, 15:46
    #38023565
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Таблица 1
Фамилия Имя Отчество Серия НомерИванов Иван Иванович 1 1Иванов Иван Иванович 2 2
Таблица 2
Фамилия Имя Отчество Серия НомерИванов Иван Иванович 3 3Петров Петр Петрович 1 1
Что должно получится в результате?
...
Рейтинг: 0 / 0
02.11.2012, 15:56
    #38023593
вывод
ВладимирМ, соответствующие поля серия и номер из второй таблицу нужно вывести рядом с полями номер и серия первой таблицы.
...
Рейтинг: 0 / 0
02.11.2012, 16:00
    #38023604
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Какие записи из второй таблицы соответствуют записям из первой? В первом филиале есть 2 полных однофамильца. Во втором филиале 3-ий полный однофамилец.

Как, по каким признакам, Вы собираетесь определять, что это один и тот же сотрудник или разные, если серия и номер - не достоверны? Как Вы определите это полные однофамильцы (разные сотрудники) или один и тот же сотрудник, но с ошибкой в серии или номере?
...
Рейтинг: 0 / 0
02.11.2012, 21:09
    #38024047
вывод
ВладимирМ, а если такой случай. в обеих таблицах есть поля фамилия, имя, серия, номер и код. связаны по полям фамилия, имя, серия, номер. нужно вывести в третьем курсоре первую таблицу и поле код из второй таблицы соответствующий записям из первой.
...
Рейтинг: 0 / 0
02.11.2012, 21:16
    #38024063
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Начинающий0595а если такой случайА если не такой?
Вы уже опишите задачу нормально, а?
...
Рейтинг: 0 / 0
03.11.2012, 03:28
    #38024266
вывод
Что вы на ТС накинулись? Как ему задачу поставили. так он и объясняет...

Насколько я понял объяснения ТС, ему надо сравнить таблицу "своей" информационной системы с внешним файлом.
Здесь нельзя однозначно определить соответствие, лишь с некоторой вероятностью...
В реальной жизни для более однозначной идентификации к ФИО+номер документа добавляется еще либо дата выдачи документа, либо дата рождения человека.
Для полного счастья необходимо привести задачу еще "ближе к жизни" - предположить, что во внешних файлах ФИО набраны с ошибками. И при сравнении ФИО из разных таблиц надо использовать не простое равенство, а более сложные алгоритмы... Например, сравнение по Soundex()... Хотя, "родной" Soundex() FoxPro только для латиницы работал...

В примере же ВладимираМ, в результирующую таблицу несоответствие должно быть выведено дважды, так как мы не знаем к какому из однофамильцев Ивановых относится запись. Это должен разбирать специальный человек...

А так - задача сравнения двух таблиц из разных источников достаточно распространенная. Я поработал в Пенсионном Фонде в начале 2000-х и таких задач много порешал.
Например, ежемесячное закрытие пенсионных дел умерших пенсионеров. При этом списки умерших подаются внешней организацией - ЗАГСом.
И начинаются пляски с бубном: в нашей базе данные паспорта не обновлены, а в ЗАГСе - последние данные; в фамилии одна буква перепутана (когда, где, кем - кто разберет) ; указана не дата, а только год рождения и т.д....
В общем, я ТС понимаю...
...
Рейтинг: 0 / 0
03.11.2012, 10:09
    #38024318
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вывод
Станислав С...кийЧто вы на ТС накинулись? Как ему задачу поставили. так он и объясняет...

А потом решит ее как смог... Вот так нарешают по принципу лишь бы работало, а потом по телевизору смотрим страсти про живых мертвецов, которых случайно в базе ЗАГСа на тот свет отправили и пенсии лишили. И ходит человек в судах доказывает что он не зомби.

Так что ТСу надо сначала поглубже разобраться с постановкой задачи, где какая инфа, откуда что берется, где какие опечатки допустимы, как сейчас поступают с подобными ошибками, а потом уже спрашивать как задачу решать.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / вывод / 25 сообщений из 30, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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