Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогоите с хранимой процедурой 
:(
    Опции темы
Gava
Дата 7.2.2007, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Общий смысл: есть человек и у него есть id. Он находится под другим чел-ком(хозяином) и у хозяина тоже есть соответственно свой id. Суть задачи: посчитать сколько у каждого хозяина вассалов... вы уж там за терминологию не вините...игра...
делаю на ms sql 2000
алгоритм такой: смотрим id-хозяина в строке с вассалом, находим в таблице хозяина по id. в его же поле vas прибавляем 1. Все. И так по кругу... а! у самого крутого хозяина id хозяина=0
создаем хранимку 

Код

CREATE procedure vass_num  @uid, @hid bigint, -- uid - юзер id, hid - id хозяина
while @hid>0
begin
update users set vas=vas+1 where userid = @sid
@uid=@sid                                        --
select @sid=hozid where @uid=userid              -- а вот с этими 2мя строчками у меня не детские проблеммы...
GO

эти 2 строчки это помесь basic и pascal... а вместо них должен быть этот кусок алгоритма:и так по кругу
люди! поможите чем можите...:-[
PM MAIL ICQ   Вверх
ТоляМБА
Дата 8.2.2007, 06:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

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



Цитата
 Помогоите
 Помогоаю:
Цитата(Gava @  7.2.2007,  19:56 Найти цитируемый пост)
Суть задачи: посчитать сколько у каждого хозяина вассалов... 

Цитата(Gava @  7.2.2007,  19:56 Найти цитируемый пост)
uid - юзер id, hid - id хозяина

Код
 Select hid, count(uid)
from Table1 --это твоя таблица, которую ты кстати в хранимке ваще не указал  :hehe 
group by hid 
 А вообще-то неплохо было бы структуру таблиц в студию!


PM   Вверх
SergKO
Дата 8.2.2007, 07:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

Репутация: 17
Всего: 20



Кен Хендерсон, Профессиональное руководство по SQL Server. Приведен пример решения такой задачи.
PM MAIL   Вверх
Gava
Дата 8.2.2007, 08:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



таблица из 3х полей userid, hozid и vas все bigint.


Цитата(SergKO @  8.2.2007,  07:22 Найти цитируемый пост)
Кен Хендерсон, Профессиональное руководство по SQL Server. Приведен пример решения такой задачи.


    
Книга больше не продается, но вы можете оставить заявку, если заявок будет достаточно, возможно книга будет переиздана.(доступно только зарегистрированным пользователям) http://shop.piter.com/book/978546900257/ к сожалению... а в электронном варианте есть?
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

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

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


 




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


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

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