powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Импортирование с помощью UPDATE
3 сообщений из 3, страница 1 из 1
Импортирование с помощью UPDATE
    #36170599
Vady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
У меня не получается более грамотно составить SQL-запрос UPDATE. Задачка такова: есть собственная таблица table1 и импортируемая table2. table2 содержит поля fam, im, ot, dr, s_pasp, n_pasp, dp (то есть, Фамилия, Имя, Отчество, Дата рождения, Серия паспорта, Номер паспорта, Дата выдачи паспорта). table1 содержит аналогичные поля.
Есть нюанс: в импортируемой таблице есть дубликаты данных - там на одного человека есть как старые паспорта, так и новые. А обновлять нужно исключительно новые.

Пробовал писать подобное:
Код: plaintext
UPDATE table1 SET s_pasp=(SELECT a.s_pasp FROM table2 as a, table1 as b where a.fam=b.fam and a.im=b.im and a.ot=b.ot and a.dr=b.dr), n_pasp=(...)...
Этот запрос, конечно, не прокатит, т.к. select все равно может выдавать несколько результатов.
Вот что интересно: а можно ли упростить SET нескольких полей?
...
Рейтинг: 0 / 0
Импортирование с помощью UPDATE
    #36170729
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VadyВот что интересно: а можно ли упростить SET нескольких полей?
Можно. Просто Select надо писать не в опции SET, а в опции FROM, поскольку обновление для всех полей должно браться из одной и той же записи

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
* Для Visual FoxPro  9   
UPDATE table1 ;  
SET ;
	s_pasp = table2.s_pasp ;  
	,n_pasp = table2.s_pasp ;
FROM table2 ;  
WHERE table1.fam=table2.fam ;
	and table1.im=table2.im ;
	and table1.ot=table2.ot ;
	and table1.dr=table2.dr 

А насчет "обновлять исключительно новые" вам лучше знать, по каким критериям отличать "новые" от "старых"
...
Рейтинг: 0 / 0
Импортирование с помощью UPDATE
    #36170809
Vady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимирМ, спасибо за ответ! уже въехал!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Импортирование с помощью UPDATE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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