Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / вопрос по удалению строк / 4 сообщений из 4, страница 1 из 1
27.12.2006, 08:46
    #34226715
dimakz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по удалению строк
есть 2 таблицы A и B
таблица А:
ext
1002
1003
1004
1005
1006
1007

таблица B:
е
1005
1007

я хочу , чтоб в таблице А удалились те строки, которые есть в В

SELECT 1
USE a

DO WHILE !EOF()
USE b
SELECT 1
IF ext=e
DELETE
PACK
ENDIF
SKIP
ENDDO


но не получается, помогите
...
Рейтинг: 0 / 0
27.12.2006, 08:57
    #34226739
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по удалению строк
Код: plaintext
1.
2.
3.
sele b
index on e tag e
sele a
delete for indexseek(a.ext, .f., 'b', 'e')
...
Рейтинг: 0 / 0
27.12.2006, 08:59
    #34226744
IgorProgrammer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по удалению строк
нужен индекс в таблице B по полю E
Код: plaintext
1.
2.
use a in  0 
use b in  0 
DELETE FROM A where SEEK(ext,'B','E')
...
Рейтинг: 0 / 0
27.12.2006, 09:04
    #34226755
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вопрос по удалению строк
dimakzесть 2 таблицы A и B
таблица А:
ext
1002
1003
1004
1005
1006
1007

таблица B:
е
1005
1007

я хочу , чтоб в таблице А удалились те строки, которые есть в В

SELECT 1
USE a

DO WHILE !EOF()
USE b
SELECT 1
IF ext=e
DELETE
PACK
ENDIF
SKIP
ENDDO

но не получается, помогите
Я бы сделал так:

Код: plaintext
1.
DELETE FROM A WHERE ext IN (SELECT e FROM B)
С уважением, Алексей.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / вопрос по удалению строк / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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