Модераторы: Akella

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отбор данных в двух таблицах dbf 
:(
    Опции темы
ivan2222
Дата 3.11.2016, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Здравствуйте, помогите пожалуйста, есть 2 таблицы формата dbf с одинаковыми полями, требуется написать запрос что бы данные из одной таблицы отбирались в другой а лишнее удалялось, что бы отбор был по 3 столбцам.
таблицы это список жителей города,
нужно отобрать по номеру страхового пенсионного, по категории льготника и по закрытой или открытой лготной категории тип N - открытая, или D - закрытая
два файла формат файлов dbf, столбцы pfr, cat_id, type_open. тип полей Character. 
нужно что бы данные в первом файле остались теже что и во втором а лишние в первом файле удалились, отбор должен быть по 3 столбцам
Запрос будет выполняться в Database Explorer
PM MAIL   Вверх
Akina
Дата 3.11.2016, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 449



Код

DELETE t1.*
FROM t1
LEFT JOIN t2
  ON  t1.field1=t2.field1 
  AND t1.field2=t2.field2
-- ...
WHERE t2.id IS NULL 



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ivan2222
Дата 3.11.2016, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Я прошу прощения за вопрос field1 это название файла, а t1 - это столбца? 
PM MAIL   Вверх
Akina
Дата 3.11.2016, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 449



Угу... только наоборот.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ivan2222
Дата 3.11.2016, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Как на оборот?

Добавлено через 1 минуту и 8 секунд
А куда вписывать название столбца?
PM MAIL   Вверх
Akina
Дата 3.11.2016, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 449



Цитата(ivan2222 @  3.11.2016,  12:10 Найти цитируемый пост)
куда вписывать название столбца? 

Это в Экселе столбцы. А в терминах баз данных это называется "поле". А по-буржуйски - field.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ivan2222
Дата 3.11.2016, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Получается для второго значения нужно после
WHERE t2.id IS NULL
вставить то же самое только для второго значения?
PM MAIL   Вверх
Akina
Дата 3.11.2016, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 449



Что такое "второе значение"?
 В шаблоне однозначно указано, куда надо вносить корректировки.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ivan2222
Дата 3.11.2016, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Я имею ввиду куда вписывать название полей pfr, cat_id, type_open?
PM MAIL   Вверх
Akina
Дата 3.11.2016, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 449



Цитата(ivan2222 @  3.11.2016,  15:50 Найти цитируемый пост)
куда вписывать название полей pfr, cat_id, type_open? 

Так вроде выбора-то нет, всё слишком однозначно... не расстраивай.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ivan2222
Дата 3.11.2016, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Я прошу прощения подскажи пожалуйста куда вписывать названия полей? Я что то не понял.
PM MAIL   Вверх
ivan2222
Дата 7.11.2016, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Подскажите пожалуйста куда вставлять названия полей таблиц?

PM MAIL   Вверх
ivan2222
Дата 7.11.2016, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Я как понял получается так 

DELETE org_out_2016_1.*
FROM org_out_2016_1
LEFT JOIN org_out_2016_2
  ON  org_out_2016_1.pfr=org_out_2016_2.pfr 
  AND org_out_2016_1.cat_id=org_out_2016_52.cat_id
  AND org_out_2016_1.type_open=org_out_2016_52.type_open
WHERE org_out_2016_2.id IS NULL 


PM MAIL   Вверх
Akina
Дата 7.11.2016, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20393
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 449



Похоже. Только в условии связывания у тебя лишние пятёрки...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ivan2222
Дата 18.11.2016, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 3.11.2016

Репутация: нет
Всего: нет



Подскажите а возможно ли это осуществить в программе написаной в делфи? Я не очень разбираюсь в программировании, помогите пожалуйста!
PM MAIL   Вверх
Google
  Дата 24.5.2019, 09:13 (ссылка)  





  Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Другие СУБД | Следующая тема »


 




[ Время генерации скрипта: 0.1066 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.