Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Вниз

Определить первый свободный ID   Найти похожие ветки 

 
dmitryK   (2001-12-05 12:33) [10]

select min(t1.ID)+1
from tabX t1 left join tabX t2 on t1.ID=t2.ID+1
where where t2.ID is NULL

tabX - это и есть твоя таблица. Она объединяется сама с собой. В результате получаешь запрос, который включает две колонки с ID
первая - все ID имеющиеся в твоей таблице,
вторая - если ID+1 есть, то ее значение, если нет, то NULL

where where t2.ID is NULL - оставляет только те где вторая колонка NULL, т.е. ID+1 свободно.

min(t1.ID)+1 - возращает минимальный номер свободного ID.

Подробнее читай описание языка SQL.

У такого запроса только один недостаток, должна быть хотябы одна запись в таблице, и номер свободного ID будет всегда больше минимального занятого.
Но это уже другая история...



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

Форум: "Базы";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.007 c
1-22210
Man In Red
2001-12-15 20:12
2002.01.08
Как намутить такое, что бы............................


6-22286
ReY
2001-10-08 18:07
2002.01.08
Пиплы!!! Нужен ICQ!


3-21996
vinni2000
2001-12-06 11:47
2002.01.08
Как с помощью запроса выбрать данные из Query


14-22327
fliz
2001-11-05 15:39
2002.01.08
а говорят послезавтра праздник?


14-22342
Дремучий
2001-11-05 18:52
2002.01.08
Конкурс! Обои для игры (сайта) Sea Fight!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский