Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.28;
Скачать: CL | DM;

Вниз

SQL+   Найти похожие ветки 

 
VIB   (2002-02-01 17:27) [0]

Есть некая таблица Customer, в которой существует некоторое целочисленное поле ID, служащее первичным ключем. В процессе работы в таблицу добавляются и удаляются записи. После удаления возникают так называемые дырки (к примеру 1,2,4,5,7,8). Необходимо одним запросом найти любую дырку


 
}{unter ©   (2002-02-01 18:17) [1]

Да вопрос интересный ! Сижу репу чешу. По-моему так сходу не ответишь. Пишу проверяю. Может быть раньше кто нарисует - интересно посмотреть !


 
AlexR_R   (2002-02-01 19:43) [2]

Может есть что-то лучше, первое что пришло в голову


select t1.* from test t1
where
not exists(select id from test t2 where t2.ID > t1.ID and t2.id <= t1.ID + 1)

Получишь все номера к которым прибавив единицу получишь пустой ID
Если добавить order by t1.ID, то первая запись плюс один
будет минимальным ID


 
VIB   (2002-02-02 13:06) [3]

Спасибо AlexR_R за ответ. Но он работает неправильно.
Если есть последовательность 1,2,4,5,7,8 то запрос выдает
результат 2,5,8


 
VIB   (2002-02-02 13:55) [4]

Если кому-то интересно то я раздолбал проблему.Запрос
select a.id+1 nom from cust.db a
where not exists(select b.id from cust.db b where a.id+1=b.id )




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

Текущий архив: 2002.02.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-90484
Bormanoid
2002-02-03 18:08
2002.02.28
Создание динамического отчета в Делфи?


1-90625
tovSuhov
2002-02-12 07:52
2002.02.28
Ограничения на размер битмапа...


14-90670
skiph
2002-01-12 11:33
2002.02.28
unix


1-90585
Forrest1
2002-02-08 14:55
2002.02.28
Макрос в Excel


7-90686
NewMax
2001-11-23 13:07
2002.02.28
Генератор гармонических колебаний из звуковухи??