powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
12 сообщений из 12, страница 1 из 1
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184012
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть две таблицы.
Первая таблица содержит автоинкрементный столб "id_products". Порядка 200 записей - играет роль каталога.
Вторая таблица содержит столб "id_products" (уже не уникальный, повторения допускаются), "id_periods" (аналогично с предыдущим) и проч, что не играет роли.

Так вот задача такая: написать в один запрос добавление во вторую таблицу такого количества записей, сколько находится в первой таблице: т.е. перебрать всю T1, забив в T2 строки с "id_products" из T1, ну и остальные значения (они уже одинаковы и их можно просто задать значениями в VALUES). При этом необходимо проверить перед добавлением, чтобы таких записей еще не существовало в T2.

Смог бы сам разобраться, но времени, как водится, в обрез :)
Заранее спасибо.
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184027
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Queries -> New -> из таблиц выбираем Т1 -> переводим в Append Query -> на вопрос "куда добавлять" задаем Т2 -> выбираем нужные поля. Времени на это все нужно меньше, чем понадобилось мне, чтобы написать этот ответ.
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184039
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блин, я - растяпа - главное-то не сказал! Прошу прощения!
Мне нужен чистый SQL запрос. Я ж пишу на билдере под базу Access. Так что запрос надо ручками, строкой.

Еще раз извиняюсь :)
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184048
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделай как сказали и скопируй SQL строку
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184050
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ага, уже догадался. Пробую.
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184094
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блин, чушь какая-то.

Знач так: Access 2002.
"Запросы"->"Создание запроса в режиме конструктора"->"Добавление таблицы": выбрал таблицу-каталог, из которого добавлять.

Жму правой "Тип запроса"->"Добавление...": выбираю куда добавить - в T2.

Я полями химичил-химичил - ничерта не смог...
Получил только "INSERT INTO amounts ( id_products ) SELECT mounts.id_products FROM products, amounts;"

А мне еще в остальные поля amounts.* надо вставить константы.
И шоб без дублей, шоб убедиться что такой записи еще нету.
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184121
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Я не понял, кто такие mounts и amounts, поэтому пишу через Т1 и Т2:

INSERT INTO T2 ( id_products, field1, field2 ) SELECT id_products, 13, 14 FROM T1;
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184142
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И в догонку
Код: plaintext
Where T1.id_products Not In (Select id_products From T2)
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184152
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок, всё верно.
Но к сожалению он добавляет записи в любом случае, даже если такие уже есть в T2. Как добавить только если записи не существуют?
При проверке нет необходимости проверять каждую запись. Достаточно установить, что нет записей с (field1=13 AND field2=14).
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184154
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Лох Позорный: пока писал пред.ответ, твой пост прозевал, сори. Сейчас попробую.
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184171
Paranoik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё, запрос готов и фурыкает.

Всем огромное СПАСИБО за помощь!
Такой оперативной помощи мне еще не доводилось получать :)
...
Рейтинг: 0 / 0
SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
    #32184183
VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
INSERT INTO T2 ( id_products, fld1, fld2 ) 
SELECT t1.id_products, t1.fld1,t1.fld2 FROM T1 left join t2 on t1.id_product=t2.id_product
where t2.id_product is null;
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / SQL запрос, простой для вас - спецы - и трудноватый для меня. Подскажите, а?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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