|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
||||||
Написании сложного запроса для копирования данных из табл1 в табл2 с изменением12.05.2012, 11:51. Показов 1149. Ответов 14
Метки нет (Все метки)
Добрый день. Есть БД на MSSQL 2005.
Существует две таблицы: Contacts: ID Name Birthday ... Tasks: ID ContactsID Date Subject Text В первой хранятся данные о контактах, во второй напоминания. Задача: Автоматически добавить в таблицу Tasks напоминания о днях рождениях Контактов. При этом надо: 1)чтобы данные о др не повторялись 2)дата дня рождения бралась только день и месяц, а год подставлялся из текущей даты 3)Tasks.Subject была равное формату: "День рождение "+Contacnts.Name 4)Tasks.Text = "Поздравить с днем рождения" 5)Tasks.ContactsID = Contacts.ID Не знаю как задать все эти условия... пока додумался лишь до:
Проверку не понятно по каким данным производить. Если по Date - то не правильно, ведь на этот день может еще что-то быть запланированно. Значит остается либо по Subject, что на мой взгляд не надежно, либо по двум-трем переменным... В общем буду рад любым советам и подсказкам.
0
|
||||||
| 12.05.2012, 11:51 | |
|
Ответы с готовыми решениями:
14
Сделать так, чтобы при заполнении Табл1, значение из какой либо ячейки сразу падало в новую ячейку Табл2 Создание сложного запроса для БД..
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|
| 14.05.2012, 13:47 | |
|
А зачем две таблицы, что бы хранить несколько напоминаний о дне рождения?
Если не, то достаточно одной таблицы.
0
|
|
|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
|
| 15.05.2012, 11:00 [ТС] | |
|
Потому что уже существует такая система. И там не несколько напоминаний, а база данных клиентов. необходимо сделать таблицу с напоминаниями,в которых помимо напоминаний о днях рождениях будут так же другие, введенные пользователями.
Тоесть по сути реализованна система напоминаний в таблице Tasks. Contacts это другая таблица, которая существует уже давно. Надо чтобы в таск появились автоматически записи о днях рождениях из Contacts. Как это сделать?
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|
| 15.05.2012, 11:44 | |
|
В таблице Таск какой ключ?
Добавлено через 1 минуту Есть ли индексы? Напрашивается индекс по трем полям: ContactsID Date Subject
0
|
|
|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
|
| 15.05.2012, 12:01 [ТС] | |
|
в Tasks ключ id, который автоматом увеличивается.
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|
| 15.05.2012, 12:17 | |
|
Нужно сделать уникальный составной индекс по трем полям:
ContactsID Date Subject Перед insert проверять на наличие записи по этим трем полям.
0
|
|
|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
|
| 15.05.2012, 14:37 [ТС] | |
|
а можно пример?
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|
| 15.05.2012, 14:50 | |
|
Образец индекса.
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
||||||
| 15.05.2012, 15:03 | ||||||
|
День рождения в каком виде хранится?
Добавлено через 6 минут проверка наличия строки
0
|
||||||
|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
|
| 15.05.2012, 15:06 [ТС] | |
|
дни рождения в формате datetime
Добавлено через 2 минуты спасибо за запрос...сейчас попробую)
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|||||||||||||
| 15.05.2012, 15:24 | |||||||||||||
0
|
|||||||||||||
|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
|
| 15.05.2012, 15:36 [ТС] | |
|
А это все в один запрос можно запихнуть?
Тоесть будет что-то типа: select convert( datetime,convert(varchar(6),Birthday)+ ' ' + convert(varchar(6),datepart(year, getdate()))) and select 'День рождение '+Contacnts.Name так?
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|
| 15.05.2012, 15:45 | |
|
Все в один select
0
|
|
|
4 / 4 / 0
Регистрация: 12.05.2012
Сообщений: 42
|
|
| 15.05.2012, 15:46 [ТС] | |
|
ок спс, буду пробовать
0
|
|
|
43 / 43 / 0
Регистрация: 04.05.2012
Сообщений: 205
|
|
| 15.05.2012, 15:49 | |
|
Пишится хранимая процедура, туда передаются параметры.
ContactsID Date Subject Которые потом подставляются в WHERE
0
|
|
| 15.05.2012, 15:49 | |
|
Помогаю со студенческими работами здесь
15
Update сложного запроса Построение сложного запроса
Создание сложного запроса.
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
|