Вниз
Скачать: 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
15-1347000404
ford
2012-09-07 10:46
2013.03.22
алгоритм для анализа изображения


2-1346143882
FIL-23
2012-08-28 12:51
2013.03.22
ehlib


15-1349681511
Jeer
2012-10-08 11:31
2013.03.22
Отечественные микропроцессоры


15-1336860390
Глеб
2012-05-13 02:06
2013.03.22
Поиск нужного компонента


15-1336720167
alexdn
2012-05-11 11:09
2013.03.22
Что первое?




   Наверх