powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проблема сущности клиент и договор?
41 сообщений из 41, показаны все 2 страниц
Проблема сущности клиент и договор?
    #35889894
storysoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сущности клиент и договор связь один ко многим. У клиента с течением времени могут изменятся атрибуты адрес, фио, паспортные данные. В договоре данные атрибуты должны остаться неизменными. Подскажите как правильно организовать структуру базы данных?
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35889916
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант

Сущность клиентКодДата регистрацииВсякие параметры которые не меняются...
ДоговорыКод клиентаКодВсякие параметры для договора...

А изменяемые атрибуты клиента оформляются как-то так...

Атрибут N у клиентовКод клиентаДата измененияВсякие параметры для атрибута N...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35889973
Geep
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужны три таблицы:
Клиенты, Реквизиты клиентов (с атрибутом [период]), Договоры с клиентами.
В реквизитах клиентов храните те реквизиты, которые могут со временем менятся.
В Договорах реквизиты хранить не нужно.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35889982
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
storysoftВ договоре данные атрибуты должны остаться неизменными. Подскажите как правильно организовать структуру базы данных?
Помнить состояние клиента на дату договора.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890166
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тынць
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890233
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У договора есть дата. У реквизитов есть интервал актуальности (действует от...до).
Для конкретного договора не проблема вытащить актуальный для него реквизит.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890329
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>. У реквизитов есть интервал актуальности (действует от...до).
Смысл плодить лишнее? Проще "действует от", и за интервалами следить не
нужно, и заполнять проще.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890639
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill Razuvaev
Проще "действует от", и за интервалами следить не нужно, и заполнять проще

тынць ( http://samouchka.net/ebooks/database/bdoracle/17681-oracle.-proektirovanie-baz-dannykh.html]Глава 7. " Обработка временных данных " )

>
>
> Posted via ActualForum NNTP Server 1.4
>
> Тема <http://www.sql.ru/forum/actualthread.aspx?tid=649987> Ответить
> <http://www.sql.ru/forum/actualpost.aspx?tid=649987> Сообщение
> <http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=649987&msg=6972445>
>


--
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890723
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> тынць (Глава 7. "Обработка временных данных")

Это уж разработчику решать, как...


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890740
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_SoftKirill Razuvaev
Проще "действует от", и за интервалами следить не нужно, и заполнять проще

тынць ( http://samouchka.net/ebooks/database/bdoracle/17681-oracle.-proektirovanie-baz-dannykh.html]Глава 7. " Обработка временных данных " )

К этому стоит добавить еще то, что в книге примеры для Oracle 7.
А на дворе уже 11g гуляет.

Не то, что бы много чего поменялось, но возможностей у Oracle с тех пор поприбавилось.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890823
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то подразумевалось:

на практике исключать столбец DATE_TO не рекомендуется, так как это приведет к необходимости использовать очень сложный и неэффективный SQL-код

вне контекста СУБД и, уж тем более, каких-либо версий...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35890944
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> на практике исключать столбец DATE_TO не рекомендуется, так как это
>> приведет к необходимости использовать очень сложный и неэффективный
>> SQL-код
И давно запрос с поиском максимальной даты, меньшей определенной, стал
сложным? А эффективность - она правильной индексацией обеспечивается...


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891038
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_SoftВообще-то подразумевалось:

на практике исключать столбец DATE_TO не рекомендуется, так как это приведет к необходимости использовать очень сложный и неэффективный SQL-код

вне контекста СУБД и, уж тем более, каких-либо версий...На заборе много чего написано...

Про эффективность, реально померянную и оцененную: История одна дата vs две. Что лучше?

Так что не все так однозначно, как в книжке пишут.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891070
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill Razuvaev
И давно запрос с поиском максимальной даты, меньшей определенной, стал сложным?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
select
   Contract.*,
   Contragent.*,
   Doc.*,
   Vehicle.*
from
   Contract
   join Contragent on (Contragent.Id=Contract.ContragentId)
   join Doc on (Doc.Id=Contragent.DocId)
   join Vehicle on (Vehicle.Id=Contract.VehicleId)
where
   (ContractId=SmthValue)
   and (Contract.Date between Contragent.DateFrom and Contragent.DateTo)
   and (Contract.Date between Doc.DateFrom and Doc.DateTo)
   and (Contract.Date between Vehicle.DateFrom and Vehicle.DateTo)
и таких join'ов с десяток... Покажите Ваш несложный запрос с поиском максимальной даты хотя бы для выше указанного...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891174
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bely
Про эффективность, реально померянную и оцененную: История одна дата vs две. Что лучше?

Не показательно... Табличка всего одна... А если много? BTW,
MasterZiv
(на самом деле конечно не такой он и сложный, но если его вложить в другие запросы которые уже реально с данными работать будут, будет совсем невесело)

Bely
Так что не все так однозначно, как в книжке пишут.

У нас, как раз, ситуация "с точностью до наоборот": на практике дошли к тому, что позже в букварях прочитали...

off
Такое ощущение, что все сдесь крутиться вокруг трех китов: и тут вылезли null значения

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891187
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
Kirill Razuvaev
И давно запрос с поиском максимальной даты, меньшей определенной, стал сложным?
Покажите Ваш несложный запрос с поиском максимальной даты хотя бы для выше указанного...
А почему именно в таком виде все должно обязательно быть с точки зрения проектирования?
Может достаточно ограничиться только датой "От", а в договоре сохранять ссылку на периодические реквизиты? То есть, запрос последней строки будет обычным select top 1 order by, а потом уже никаких подзапросов не будет, просто прямой join на периодический реквизит, с которым связан договор.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891256
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Васкецов
А почему именно в таком виде все должно обязательно быть с точки зрения проектирования?

Ну... Нам так надо... Так спроектировали... Что-то криминальное?
Сергей Васкецов
Может достаточно ограничиться только датой "От", а в договоре сохранять ссылку на периодические реквизиты? То есть, запрос последней строки будет обычным select top 1 order by, а потом уже никаких подзапросов не будет, просто прямой join на периодический реквизит, с которым связан договор.

Предлагаете винегрет (В.1. + В.2.)?
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891277
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_SoftПредлагаете винегрет
Скорее просто указываю, что из отсутствия поля "До" еще не следуюет, что придется колупаться с подзапросами типа select max или not exists вместо Ваших between.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891345
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Васкецов
из отсутствия поля "До" еще не следуюет, что придется колупаться с подзапросами типа select max или not exists вместо Ваших between

А смысл скрещивать ужа и ежа, в принципе, IMHO, вполне самодостаточных варианта:
1. Ид на актуальную info
2. временнЫе параметры
попутно внося специфичные для каждого грабли в общий котел и еще больше все усложняя?

P.S. Вариант 1 сдесь вообще не обсуждался. Видать его даже за вариант не считают...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35891966
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_SoftА смысл скрещивать ужа и ежа
Да это пусть автор думает. Я в подобной ситуации сделал бы ссылку в договоре на актуальные параметры, в которых дата была бы просто как второе поле уникального ключа. И все проверки есть, и блокировка правки заюзанного легко делается, и запросы простые. В общем, тут же нет причин все усложнять.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35892011
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Васкецовблокировка правки заюзанного легко делаетсяКак?
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35892134
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Softи таких join'ов с десяток... Покажите Ваш несложный запрос с поиском максимальной даты хотя бы для выше указанного...Речь о том, что ссылку на нужную версию периодических реквизитов можно получить запросом типа:
Код: plaintext
1.
select max(C.GenID) from Contragents C
where C.StartDate<:ContractDate and C.ContragentID=:ContractID
который достаточно эффективен при наличии desc индекса по двум полям. Аналог можно и к join'ам добавить.
IMHO, такие выборки быстрее between. Да и разрывы/перекрытия диапазонов больше шансов получить при многопользовательской работе и одновременной правке реквизитов.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35892190
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е., таки, сходимся к комбинированному варианту:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select
   max(C.GenID)
from
   Contragents C
where
   (C.RecordModify<:ContractDate)
   and (C.ContragentID=:ContractID)
???
не тяжеловато ли будет а-ля:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select
    Contract.*,
    Contragent.*,
    Doc.*,
    Vehicle.*
from
    Contract
    join Contragent on (Contragent.Id=select max(Id) from Contragent where RecordModify<Contract.Date and Id=Contract.ContragentId)
    join Doc on (Doc.Id=select max(Id) from Doc where RecordModify<Contract.Date and Id=Contragent.DocId)
    join Vehicle on (Vehicle.Id=select max(Id) from Vehicle where RecordModify<Contract.Date and Id=Contract.VehicleId)
where
    (ContractId=SmthValue)
???
Даже не уверен, что отработает...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35892922
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> не тяжеловато ли будет а-ля:
Ну, полный список всех договоров со всеми (!) join'ами - редкое явление...
или ошибка проектирования :-)

>> Даже не уверен, что отработает...
Куда ж оно денется... В конце концов, можно куда-нибудь завернуть по частям,
в просмотры, процедуру...
IMHO, такой вариант "периодики" даже визуально контролировать проще...


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35892986
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill Razuvaev
Ну, полный список всех договоров со всеми (!) join'ами - редкое явление...

отчетность

Kirill Razuvaev
или ошибка проектирования

а как тогда по другому (если без смайла)?
Kirill Razuvaev
в процедуру...

Ну и как потом если что-то сводное? Особенно, если select from stored_procedure нЭт?
Kirill Razuvaev
Куда ж оно денется...

Не... Ну это - понятно... Только, вот, если один сервак вообще на все и вся и юзверов порядочно - то, если честно, сомнение гложет...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893077
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Не... Ну это - понятно... Только, вот, если один сервак вообще на все и
>> вся и юзверов порядочно - то, если честно, сомнение гложет...
Покой нам только снится... (c)
Насколько я понимаю, between тоже не самая легкая операция.
"Все фигня кроме пчел, пчелы тоже фигня - но их МНОГО! " (с) :-)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893206
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Че-то не выходит каменный цветок
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
create table ContragentMasterWGenIdDate
(
    Id numeric( 18 , 0 ),
    GenId numeric( 18 , 0 )
)

create table ContragentDetailWGenIdDate
(
    GenId numeric( 18 , 0 ) identity,
    Name varchar( 1024 ),
    RecordModify datetime
)
IdGenId111233
GenIdNameRecordModify1'Ленин Владимир Илич''20090320'2'Ленин Владимир Ильич''20090321'3'Сталин Иосиф Виссарионович''20090326'
Пытаюсь даже просто получить актуальные версии
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
select
   CM.Id,
   max(CM.GenId) as GenId,
from
   ContragentMasterWGenIdDate CM
group by
   CM.Id
order by
   CM.Id
А как теперь c'join'ить с ContragentDetailWGenIdDate?
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893327
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я несколько другое имел ввиду:
Код: plaintext
1.
2.
3.
4.
create table Contragents ( GenID integer not null,
 ID integer not null,
 Name varchar( 30 ) not null,
 Dated date not null,
 primary key (GenID));
Вставляем три строки:
1; 384; ООО "Орион"; 26-jan-2009
2; 385; ООО "Мастер"; 16-feb-2009
1; 387; ООО "Орион+"; 05-mar-2009
Дальше, желая получить название контрагента с ID=1 на 27.03.09 выполняем запрос:
Код: plaintext
1.
select C.Name from Contragents C where C.ID= 1  and C.GenID=(
 select max(C1.GenID) from Contragents C1 where C1.ID= 1  and C1.Dated<='05-mar-2009')
При наличии двух уникальных индексов, включающих в себя поля [ID, Dated], и [GenID,ID], получаем быстрое решение.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893336
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так что-ли
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
select
   CM.Id,
   max(CM.GenId) as GenId,
   CD.Name,
   CD.RecordModify
from
   ContragentMasterWGenIdDate CM
   join ContragentDetailWGenIdDate CD on (CD.GenId=CM.GenId) and (CD.RecordModify<='20090329')
group by
   CM.Id
having
   CD.GenId=max(CM.GenId)
order by
   CM.Id
???
И это только получили Contragent.GenId на дату... Сдаецо мне пчелы нам дадут прикурить...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893358
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill Razuvaev
я несколько другое имел ввиду

Просто вместо моих двух ContragentMaster+ContragentDetail одна денормализированная Contragent... В остальном - все понятно... Но, все же, - настораживает...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893360
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> И это только получили Contragent.GenId на дату...
По сути - да.
>> Сдаецо мне пчелы нам дадут прикурить...
А чем between ближе к антиникотиновой кампании?
Куча join'ов больших таблиц жизни не облегчит


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893387
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill Razuvaev
between

Вы, пожалуйста, не подумайте, что я between'овский фундаменталист и с криками between-акбар с пеной у рта до последнего защищаю его. По большому счету - мне просто необходимо оптимальное решение. Вне зависимости на чем оно будет зиждеца. Одна голова хорошо, а много - уже некрасиво
Что-то а-ля


BTW, посмотрел я на max(GenId) && <Date - а что получиться, если нуна будет задним числом что-то рихтонуть? GenId - будет увеличиваться, а Date уменьшаться. В этом случае, по идее, все гладко, но все же?..
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35893400
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> а что получиться, если нуна будет задним числом что-то рихтонуть? GenId -
>> будет увеличиваться, а Date уменьшаться.
Если Вы это на стадии проектирования понимаете, то выкидывайте сразу GenID.
Джойнить придется по дате и ID контрагента только...
GenID по сути только упрощает запросы и позволяет легче найти последнюю
версию, на касаясь даты.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35894004
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_SoftСергей Васкецовблокировка правки заюзанного легко делаетсяКак?
Тривиально. Если есть ссылка на модицифицируемую строку в договорах - пнх.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35894012
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill RazuvaevНу, полный список всех договоров со всеми (!) join'ами - редкое явление...
или ошибка проектирования :-)
Вообще-то это называется "отчет".
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35894064
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Вообще-то это называется "отчет".
Отчет обычно берется за период, и выводятся в отчет обычно не все данные
сразу. А оба этих обстоятельства сильно снижают нагрузку.
Можно ж и сканы подписей представителей до кучи в отчет вытаскивать!


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35894086
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill RazuvaevОтчет обычно берется за период
Обычно - плохое слово. Какие надо отчеты - те и делаются. Например, по сотруднику, по региону,..., и какие данные туда выводятся - это зависит от отчета.
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35894604
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Обычно - плохое слово. Какие надо отчеты - те и делаются.
>> Например, по сотруднику, по региону,..., и какие данные туда выводятся -
>> это зависит от отчета.
Так я о том и писал, что мы не выводим АБСОЛЮТНО ВСЕ. Выборка же ограничена
чем-то, либо регионом, либо сотрудником, либо датами.
Согласитесь, в контексте отчета по договорам не очень актуально выводить
такой периодический параметр, как банковские реквизиты, к примеру. Уже имеем
экономию ресурсов.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35897133
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill RazuvaevСогласитесь, в контексте отчета по договорам не очень актуально выводить
такой периодический параметр
Не очень понимаю, куда Вы клоните. Что надо, то и выводится. Если надо расчетные счета или банки, которые в договорах указаны - значит они будут. Бывает и наоборот же, сама по себе электронная форма "легкая", а в отчетах "логика" "навешана".
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35897591
Kirill Razuvaev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Не очень понимаю, куда Вы клоните.
К тому, что зачастую система вообще, и запросы в частности, бывают
искусственно утяжелены избыточными условиями и соединениями, которые дают
ощутимую нагрзуку на сервер. Не так давно изучали одну систему на предмет
экспорта из нее и долго не могли понять, в чем тормоза. В итоге оказалось,
что в экспортирующем запросе, надо признать весьма объемном (18 таблиц), -
три лишних join'а, да еще примерно пятую часть условий в where грохнуть
можно было... При этом один join - с полумилионной таблицей... :-(


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема сущности клиент и договор?
    #35897917
Sgt.Pepper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kirill Razuvaev
Насколько я понимаю, between тоже не самая легкая операция.

(Затягиваясь) Ну, безусловно, ничуть не проще чем +/-
Ex_Soft
Kirill Razuvaev
between

Вы, пожалуйста, не подумайте, что я between'овский фундаменталист и с криками between-акбар с пеной у рта до последнего защищаю его.
(Затягиваясь) Проблема, конечно, непростая. Думаю, что ее надо широко обсуждать. Создать даже не ветку, а просто отдельный форум. Типа «SQL Server», “Oracle”, “Использование between”…
Kirill Razuvaev
>> Обычно - плохое слово. Какие надо отчеты - те и делаются.
>> Например, по сотруднику, по региону,..., и какие данные туда выводятся -
>> это зависит от отчета.
Так я о том и писал, что мы не выводим АБСОЛЮТНО ВСЕ. Выборка же ограничена
чем-то, либо регионом, либо сотрудником, либо датами.
Согласитесь, в контексте отчета по договорам не очень актуально выводить
такой периодический параметр, как банковские реквизиты, к примеру. Уже имеем
экономию ресурсов.

(Затягиваясь) Between-то between-ом, но если вдуматься, проблема с where тоже не совсем тривиальная…
...
Рейтинг: 0 / 0
41 сообщений из 41, показаны все 2 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проблема сущности клиент и договор?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]