Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.024 c
3-1087386461
nstur
2004-06-16 15:47
2004.07.11
Запрос с использованием *.DB


4-1085757860
SergeyM
2004-05-28 19:24
2004.07.11
GetFileSizeEx


3-1087459727
serg128
2004-06-17 12:08
2004.07.11
Как получить значение вычислимого поля?


14-1088090669
QuasiLamo
2004-06-24 19:24
2004.07.11
Oracle


3-1086899351
DIS
2004-06-11 00:29
2004.07.11
фильтр по двум колонкам




   Наверх