class DarkRaha extends com { // разработка приложений
            String a="Главная" b="Контакты" c="О сайте"
};

основы sql

введение
структура БД
инструментарий
комментарий
идентификаторы
обзор типов данных
интервалы времени
литералы
операции и выражения
обзор функций
преобразование типов
создание таблицы
изменение, удаление таблицы
вставка данных
изменение записей
удаление записей
выбор данных
соединения
агрегатные функции, группировка данных
операции над выборками
добавление итогов
нумерация записей
уникальность первич. ключа
индексы
представления

Dynamic SQL

прочее

Справочник по SQL

Нумерация записей

В стандарт SQL2003 уже добавлена функция row_number(), если она еще не реализована в вашей версии БД, используйте следующие методы.

Oracle

В Oracle для нумерации записей введен псевдостолбец rownum.


select rownum, t.* 
    from tblname t 
    order by id desc

-- rownum можно использовать в условиях
-- попробуйте операции <> и > 
select rownum, t.* 
    from tb t 
    where rownum < 4 
    order by id desc;

MySQL

В MySQL для этого надо воспользоваться переменной. Чтобы увидеть результат следующего примера в MySQLQueryBrowser, необходимо начать транзакцию (на панели кнопка после слова Transaction). Далее выполняем приведенные в примере команды и затем завершаем транзакцию (соседняя кнопка с галочкой).


-- устанавливаем значение локальной переменной в 0
-- ее можете назвать как хотите
set @rownum:=0;

-- выборка с нумерацией
select @rownum:=@rownum+1, t.* 
    from tblname t
    order by id desc;

PostgreSQL

В PostgreSQL для этих целей можно выделить последовательность и сбрасывать ее перед новой выборкой.


-- создаем временную (для текущей сессии) 
-- последовательность seqrownum для нумерации записей
create temp sequence seqrownum;

-- сбрасываем последовательность
select setval('seqrownum',1);

-- выборка с нумерацией
select nextval('seqrownum')-1, t.* 
    from tblseq t 
    order by id desc;

Рейтинг@Mail.ru