Главная страница
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.055 c
1-1088020143
DDA
2004-06-23 23:49
2004.07.11
Изменение ресурсов


1-1088062573
Del_programmer
2004-06-24 11:36
2004.07.11
Регистрация проги


8-1081016095
Forelli
2004-04-03 22:14
2004.07.11
Как проигрывать CDA файлы (AudioCD) в программе?


14-1087546150
Kerk
2004-06-18 12:09
2004.07.11
"Полный апгрейд"


3-1087377783
jek_
2004-06-16 13:23
2004.07.11
ADO и ACCESS