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

Вниз

Номер записи   Найти похожие ветки 

 
Ertong ©   (2004-06-15 17:27) [0]

У меня есть таблица с ключом M_ID.
Нужно узнать под каким номером будет стоять (если вообше будет) запись (задан M_ID) в этой таблице,
если сделать некую выборку.
Это можно сделать так:
1. Сделать нужную выборку в DataSet
2. Пересмотреть последовательно все записи, пока не найду нужную.

А можно ли это сделать без передачи таблицы клиенту?


 
Sandman25 ©   (2004-06-15 17:28) [1]

Зачем это все?


 
Соловьев ©   (2004-06-15 17:30) [2]


> Нужно узнать под каким номером будет стоять (если вообше
> будет) запись (задан M_ID) в этой таблице,
> если сделать некую выборку.

не стоять, а лежать :)записи лежат паралельно горизонтальной линии.


 
Ertong ©   (2004-06-15 17:52) [3]


> Зачем это все?

Есть таблица клиентов. Клиенты стоят в очереди. Некоторые клиенты из очереди выходят (но остаются в таблице). При выходе из очереди в соответсвующем поле ставится пометка. Нужно по ID клиента узнать номер его очереди.


> не стоять, а лежать :)записи лежат паралельно горизонтальной
> линии.

:)


 
Sandman25 ©   (2004-06-15 17:55) [4]

select count(*)
from clients
where DateField < (select DateField from clients where client_id=myclient)


 
Соловьев ©   (2004-06-15 17:59) [5]


> Нужно по ID клиента узнать номер его очереди.

пишешь ХП. где нумеруешь своих клиентов.


 
Sandman25 ©   (2004-06-15 18:00) [6]

[5] Соловьев ©   (15.06.04 17:59)

"Это не наш метод" (с) Нужно стараться избегать курсоров.


 
Соловьев ©   (2004-06-15 18:02) [7]

а какой признак очереди? т.е. как узнать что этот лиент выше или ниже другого?


 
Соловьев ©   (2004-06-15 18:04) [8]

и что такое очередь? отдельная таблица? каким образом связана с клиентами?


 
Ertong ©   (2004-06-15 20:05) [9]


> Sandman25 ©   (15.06.04 17:55) [4]

Это немного не то.
нужно что-то типа

create view temp
as select <position>, client_id, ...
  from clients
  where <черный ящик>
  order by <черный ящик>

select count(*)
from temp
where position<(select position from temp where client_id=myclient)

<черный ящик> - эта часть может постоянно менятся

Поле position должено содержать номер записи в отсортированом представлении
Как создать такое вычесляемое поле?


 
Ertong ©   (2004-06-15 20:14) [10]


> пишешь ХП. где нумеруешь своих клиентов.


Я хотел так сделать, но нужно передать процедуре свой SQL запрос(с клиента).
Как его потом запустить?


 
Desdechado ©   (2004-06-16 11:49) [11]

а может запрос не процедуре передавать, а просто динамически формировать и вызывать с клиента?



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

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

Наверх




Память: 0.49 MB
Время: 0.026 c
14-1087782316
Vasya.ru
2004-06-21 05:45
2004.07.11
создание сети из 2х компьютеров


3-1086756262
maxi
2004-06-09 08:44
2004.07.11
SQL запрос


6-1083711385
Eugene13
2004-05-05 02:56
2004.07.11
eDonkey eMule hash алгоритм


3-1087306446
kondryuk
2004-06-15 17:34
2004.07.11
Получаю одно и то же...


4-1085226019
Lenchik
2004-05-22 15:40
2004.07.11
Хочу написать монитор температуры