Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.12.2009, 12:20   #11
SEMEon
Пользователь
 
Регистрация: 14.12.2009
Сообщений: 21
По умолчанию

можете привести пример на триггерах???
SEMEon вне форума Ответить с цитированием
Старый 26.12.2009, 12:29   #12
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

имхо на триггерах будет еще геморнее работать
потому что надо будет все равно делать запросы подобные тому что я писал ранее + модифицирующий запрос
выигрыша никакого
soleil@mmc вне форума Ответить с цитированием
Старый 26.12.2009, 13:05   #13
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
можете привести пример на триггерах???
1) это решение СУБД-зависимо... в некоторых СУБД такого понятия, как триггеры, вообще нет ;(
СУБД у Вас какая?!

2)
Цитата:
Сообщение от soleil@mmc
потому что надо будет все равно делать запросы подобные тому что я писал ранее + модифицирующий запрос
Точно так! Полностью согласен!
SEMEon, а Вы точно уверены, что Вам нужно решение с помощью триггеров?!
Повторюсь! Для реальных практических задач для подсчёта количества записей достаточно выполнять запросы.

Цитата:
Сообщение от soleil@mmc
выигрыша никакого
а вот с этим утверждением позвольте мне не согласиться... Выигрыш будет — в родительской таблице всегда будет свежая и актуальная информация. Правда, цена за это будет достаточно высока (сложность реализации + снижение (возможно даже весьма значительное!) быстродействия модификации дочерней таблицы...)

SEMEon, Вы вообще учебную или практическую задачу решаете?..
Какова конечная цель?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.12.2009, 13:28   #14
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
а вот с этим утверждением позвольте мне не согласиться... Выигрыш будет — в родительской таблице всегда будет свежая и актуальная информация. Правда, цена за это будет достаточно высока (сложность реализации + снижение (возможно даже весьма значительное!) быстродействия модификации дочерней таблицы...)
имхо (почеркиваю) сомнительный выигрыш
на каждый чих нужно будет делать ровно тот же самый запрос чтобы выяснить сдано-не сдано в виде агрегата по всем студням группы
т.е. на 3 группы в кол-ве 25 человек (суммарно, исходя из данных ТС - реально это будет и в 3 раза больше) при 3х экзаменах нужно будет сделать (на внесение каждой записи с оценкой по экзамену) 25 * 3 = 75 селективных запросов и 75 модифицирующих
то же самое запросом будет летать и не займет много времени
soleil@mmc вне форума Ответить с цитированием
Старый 26.12.2009, 13:37   #15
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
имхо (почеркиваю) сомнительный выигрыш
коллега, мы с Вами говорим об одном и том же.
Лучше эту задачу решать через запрос, возвращающий нужное количество записей. но решение на триггерах тоже имеет право на жизнь. Но имеет свои недостатки.
В данном случае я полностью с Вами согласен и я ПРОТИВ применения триггеров!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.12.2009, 23:32   #16
SEMEon
Пользователь
 
Регистрация: 14.12.2009
Сообщений: 21
По умолчанию

Да я решаю учебную задачу. И девушке знакомая сегодня моск травмировал!!! ну это так корка чтоб разбавить напряжение, задача состоит сейчас в том что таблица должна выходить на печать за последнии 3 года по слушателям кто что прослушал, ск их было в каждой специальности и ихний объем т. е. по значением итог
SEMEon вне форума Ответить с цитированием
Старый 26.12.2009, 23:38   #17
SEMEon
Пользователь
 
Регистрация: 14.12.2009
Сообщений: 21
По умолчанию

я уже решаю другую задачу то что было из начальным вопросом я решил и спасибо за помощь очень большее...вам
SEMEon вне форума Ответить с цитированием
Старый 27.12.2009, 18:03   #18
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

вот с этого и нужно было начинать - "для чего нужны такие данные"
делаем запрос по всем данным за 3 года и в цикле апдейтим имеющимся группам сколько сдало/не сдало
триггеры тут точно ни к чему
soleil@mmc вне форума Ответить с цитированием
Старый 29.12.2009, 11:11   #19
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Здравствуйте. Решил не создавать новой темы , а задать вопрос тут.
Допусти выполняем запрос "SELECT поле1,поле2 from table1", НО надо что бы над поле2 в зависимости от его длины проводились операции(допустим,
stuff(поле2,1,0,7) если длина поле2 = 11 и ,'7' + поле1 если длина поле2=10)
ssdm вне форума Ответить с цитированием
Старый 29.12.2009, 11:44   #20
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Решил не создавать новой темы , а задать вопрос тут.
категорически ЗРЯ!! Это прямое нарушение правил! если бы я был админом, я бы закрыл тему!

p.s.
Вам поможет функция выражения select:
CASE where Условие then Результат1 else Результат2 end

а функция, возвращающая длину содержимого поля2 в Вашей СУБД есть?
допустим, что есть, и что это length()
тогда
Код:
select Pole1,
  case when Length(Pole2)=11 then stuff(поле2,1,0,7)
   else '7'+Pole1 end as NewPole2
from ...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SQL - запросы в Delphi zetrix БД в Delphi 41 08.06.2010 14:07
SQL запросы ArcaN0id Microsoft Office Access 6 13.12.2009 19:42
SQL запросы Best Programmist Microsoft Office Access 8 03.12.2009 16:42
Запросы на SQL denisk0 Microsoft Office Access 0 23.05.2009 16:05
sql запросы wolf950 БД в Delphi 2 28.11.2008 21:26