Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Номер строки в запросе, база Firebird 1.0 
:(
    Опции темы
Bunny
Дата 24.10.2006, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 22.3.2006

Репутация: нет
Всего: 1



Всем здравствуйте!
Есть такая проблема - приведу пример запроса (который выводит что-то вроде рейтинга), чтобы было проще понять
Код

select field1, sum(field2)
from table
group by field1
order by 2

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

Это сообщение отредактировал(а) Bunny - 24.10.2006, 21:14
PM MAIL ICQ   Вверх
skyboy
Дата 25.10.2006, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



для этого можно(и нужно) использовать механизм генераторов.

Добавлено @ 00:23 
Генераторы и их использование
PM MAIL   Вверх
Bunny
Дата 25.10.2006, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 22.3.2006

Репутация: нет
Всего: 1



прочитал статейку, нашел вот что
Код

SET GENERATOR MYGEN TO 0; 
SELECT GEN_ID(MYGEN, 1), FIELD1, FIELD2, FIELD3, ... FROM MYTABLE.

но тут возникли два вопроса:
1. У меня запрос с группировкой и, думаю, после группировки значения в первом столбце не будут идти по порядку.
2. Вдруг еще какой-нить пользователь начнет выполнять этот запрос одновременно со мной, то значения, выдаваемые генератором, тоже не будут идти по-порядку.

PS Я надеялся на простое решение проблемы, услышать что-нить в духе - "есть функция row_number()", видимо не судьба smile
PM MAIL ICQ   Вверх
Bunny
Дата 25.10.2006, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 22.3.2006

Репутация: нет
Всего: 1



Всем спасибо, проблему так и не решил, сделал проще smile
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C++: Базы данных"
chipset

Данный форум предназначен для обсуждения вопросов прямым образом связанных с C++ и БД. Так, вопросы только по C++ следует задавать в C++:Общие вопросы а вопросы по абстрактным БД в Базах данных или в соответствующих под-форумах.

Благодарим за понимание.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, chipset.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Базы данных | Следующая тема »


 




[ Время генерации скрипта: 0.0416 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.