|
![]() |
#1 |
Участник
|
Например. Или Фин. Книга, или Стоимость Операции - в общем, где со временем количество записей начинает измеряться миллионами.
Цитата:
Например фильтр на поле Документ Но? Фильтр естественно по нескольким значениям?
Цитата:
Вот тут не очень понял. Что значит "пройтись в порядке первичного ключа"?
То есть перемещаться между отфильтрованными записямии при этом они отсортированы по порядку первичного ключа? А ключ вы выбираете или нет? То есть фильтр по полю наложили - это поле в составе ключа или нет? Если - нет, то понятно, что будет медленно - так это и везде так будет-в любой базе. А если поле есть в ключе- так и работать будет быстро. Или я что-то недопонял? Пока писал, придумал изврат: добавить новое поле в таблицу и вначале ключа поставить новое поле, которое никогда не будет заполняться, а потом уже "Entry No."... Гы, а ведь хоть какое-то решение ![]() |
|
![]() |
#2 |
Участник
|
|
|
![]() |
#3 |
Участник
|
А тогда записи будут отсортированы по этому полю, а не по первичному ключу!
![]() Milk - а решение с фиктивным полем на самом деле классное! Действительно решит проблему. Про то, что нельзя сделать вторичный, начинающийся с первичного - блин как-то не сталкивался ни разу, и не знал про это. Или знал - но забыл... |
|
![]() |
#4 |
Участник
|
Цитата:
По поводу доп. поля пустого - это не добавить производительности никак. Мне не понятно цель операции в таком случае. |
|
![]() |
#5 |
Участник
|
ну вообще это конечно вопрос к автору - для чего ему это надо.
Но я бы с ходу придумал бы такой пример: необходимость отследить хронологию ФИФО. Для этого необходимо отфильтровать ТКО по типу "Продажа" (этого в задаче нет - но суть не меняется), затем налоджить фильтр по дате, например с 01.02.08 по 05.02.08. Причем записи должны быть отсортированы по первичному ключу. В результате, если не было нарушений хронологии учета - то все даты в операциях будут возрастать. Более свежая операция - большая дата. А если хронология нарушена - то более свежие даты будут в начале списка, ну или раньше, чем менее свежие даты. |
|
![]() |
#6 |
Участник
|
Цитата:
Сообщение от rov
![]() ну вообще это конечно вопрос к автору - для чего ему это надо.
Но я бы с ходу придумал бы такой пример: необходимость отследить хронологию ФИФО. Для этого необходимо отфильтровать ТКО по типу "Продажа" (этого в задаче нет - но суть не меняется), затем налоджить фильтр по дате, например с 01.02.08 по 05.02.08. Цитата:
Причем записи должны быть отсортированы по первичному ключу. В результате, если не было нарушений
хронологии учета - то все даты в операциях будут возрастать. Более свежая операция - большая дата. А если хронология нарушена - то более свежие даты будут в начале списка, ну или раньше, чем менее свежие даты. Во-вторых, корректные нарушения так не выявишь ![]() |
|
![]() |
#7 |
Участник
|
|
|