Вниз
Скачать: CL | DM;

Оптимизировать запрос   Найти похожие ветки 

← →
Дмитрий Белькевич   (2010-06-07 19:43) [0]

Делаю ХП, можно ли как-то переписать более оптимально часть процедуры:


 if (exists(select STUDY_UID
            from STUDIES
            where STUDY_UID = :STUDY_UID and
                  STUDIES.STUDY_FILES_COUNTER = 0)) then
   delete from STUDIES
   where STUDY_UID = :STUDY_UID;


Процедура должна удалять запись с ключом STUDY_UID, если поле STUDY_FILES_COUNTER равно нулю.


← →
Виталий Панасенко(дом)   (2010-06-07 19:49) [1]

а for отменили?


← →
b z   (2010-06-07 20:47) [2]

А просто
delete from STUDIES
where STUDY_UID = :STUDY_UID and
        STUDY_FILES_COUNTER = 0;

не работает?


← →
Дмитрий Белькевич   (2010-06-07 20:59) [3]

Угу, уже [2] сам сделал. Что-то ступил сразу. Спасибо за обсуждение.


← →
Кщд ©   (2010-06-08 08:37) [4]

так
if (exists(select STUDY_UID
           from STUDIES
           where STUDY_UID = :STUDY_UID and
                 STUDIES.STUDY_FILES_COUNTER = 0)) then
  delete from STUDIES
  where STUDY_UID = :STUDY_UID;

в общем случае не эквивалентно:

delete from STUDIES
where STUDY_UID = :STUDY_UID and
       STUDY_FILES_COUNTER = 0;

если, конечно, STUDY_UID не PK, о чем ни слова)


← →
Дмитрий Белькевич   (2010-06-10 12:04) [5]

>если, конечно, STUDY_UID не PK, о чем ни слова)

>>запись с ключом STUDY_UID


← →
Кщд ©   (2010-06-11 10:06) [6]

Дмитрий Белькевич   (10.06.10 12:04) [5]
ключ ключу рознь
UQ и PK - несколько разные вещи, не так ли?


← →
Дмитрий Белькевич   (2010-06-13 00:44) [7]

Знаю pk, знаю fk, uq не знаю.


← →
turbouser ©   (2010-06-13 01:28) [8]

UQ - уникальный индекс, PK - первичный ключ
в данном случае нет разницы. FB автоматом создает индекс для PK


← →
Дмитрий Белькевич   (2010-06-13 01:49) [9]


> в данном случае нет разницы. FB автоматом создает индекс
> для PK


Я уж испугался, что в фб какой-то новый тип ключей появился :)


← →
Petr V. Abramov ©   (2010-06-15 15:53) [10]


> turbouser ©   (13.06.10 01:28) [8]

вроде бы как uq допускает null`ы, а pk - нет. хотя как в fb сделано - не помню.


← →
turbouser ©   (2010-06-15 17:22) [11]


> Petr V. Abramov ©   (15.06.10 15:53) [10]

я и не говорю, что uq и pk одно и то же :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.054 c
1-1295718209
VLK32
2011-01-22 20:43
2013.03.22
Как присвоить обобщенную процедуру


15-1339966494
Jeer
2012-06-18 00:54
2013.03.22
Вело-Вапдай


15-1345840202
Юрий
2012-08-25 00:30
2013.03.22
С днем рождения ! 25 августа 2012 суббота


2-1348491706
Дениска
2012-09-24 17:01
2013.03.22
Кеширующий HTTP прокси сервер на основе IndyHTTPProxyServer


15-1350765004
Юрий
2012-10-21 00:30
2013.03.22
С днем рождения ! 21 октября 2012 воскресенье




   Наверх