Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 61 62 63 64 65 [66] 67 68 69 70 .. 106   вперед  Ctrl
 Re: CACHE и MSSQL  [new]
MGR
Member

Откуда:
Сообщений: 536
SergSuper

денькол-во покупки/продажи цена покупки СВЦ
1 2 126 = 6
22 10 8 = (6*2+10*2)/4
3-108 = 8 (продажа; осталось 3)
4288 = (3*8+2*8)/5




А почему в первой строчке цена покупки - вроде как стоимость, а во второй вроде как цена?
То есть СВЦ второй строки не должно ли считаться как (6*2 + 5*2)/4 = 5.5?

Просто странно - вторая покупка была дешевле первой, а СВЦ увеличилась... Я не поняла :(
7 дек 06, 10:42    [3502871]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
c127
- ... балка упала им на голову, тот который без шлема - в лепешку, а тот, который в шлеме - улыбнулся себе и пошел дальше.
- да знаю я его, он так с тех пор ходит и улыбается.
(С) Городок

Даааа... Серьезно Вас переклинило.
7 дек 06, 10:45    [3502895]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
Сейчас, конечно можно утверждать все что угодно (спасибо SergSuper),
но насколько я успел заметить там таки был чистый TSQL

Сейчас можно повторить все что угодно. На что Вы расчитываете, что опять удалят?
Да, там бы чистый SQL. Да, синтаксис был от MS SQL, у простите, что не ORACLE. С ним могу работать только на сервере, тормозит страшно.
7 дек 06, 10:48    [3502917]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
MGR
Просто странно - вторая покупка была дешевле первой, а СВЦ увеличилась... Я не поняла :(

там ошибка. В первом случае показана стоимость, во втором цена.
7 дек 06, 11:04    [3503059]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Gluk (Kazan)
Сейчас, конечно можно утверждать все что угодно (спасибо SergSuper),
но насколько я успел заметить там таки был чистый TSQL

Сейчас можно повторить все что угодно. На что Вы расчитываете, что опять удалят?
Да, там бы чистый SQL. Да, синтаксис был от MS SQL, у простите, что не ORACLE. С ним могу работать только на сервере, тормозит страшно.


SQL - язык декларативный, так же как решение softwarer-а. Ваше решение было на Transact SQL.
Поверьте, не составит НИКАКОГО труда решить эту задачу на PL/SQL, но у меня не хватит наглости называть это решением на SQL.

Интересно, вы действительно не улавливаете разницу или дурку валяете ?
Опубликуйте еще раз, а мы дружно попросим модераторов ЭТО не удалять
7 дек 06, 11:04    [3503060]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
Интересно, вы действительно не улавливаете разницу или дурку валяете ?

Gluk, дурку здесь ты валяешь, следи за выражениями. А чтобы была видна разница, публикую еще раз. Копируй в блокнот, пока не удалили.

-- Балансировка бюджета

INSERT INTO FIN01 (
ID,
ITEMNO,
PDATE,
AM,
ACTUAL
)

select
newid()
,tagitemno
,pdate
,am+am2 +
	(select top 1
	isnull(k1.amount,0) as am
	from FIN00 k1
	where k1.acntno=d.tagitemno) as am
	,am3+am4 +
	(select top 1
	isnull(k1.amount,0) as am
	from FIN00 k1
	where k1.acntno=d.tagitemno) as actual
	from (
		select tagitemno,
		pdate
		,am = isnull((
			-- Изменение баланса за период
			select
			sum(k1.am*k2.tagvalue) as am
			from
			FIN01 k1
			inner join FIN06 k2 on k2.srcitemno = k1.itemno
			where k2.tagitemno = d.tagitemno and k1.pdate = d.pdate
		),0)

		,am2=isnull((
		-- Остаток на конец периода
			select
			sum(k1.am*k2.tagvalue)
			from FIN01 k1
			inner join FIN06 k2 on k2.srcitemno = k1.itemno
			where k2.tagitemno = d.tagitemno and k1.pdate < d.pdate
		),0)
		,am3 = isnull((
		-- Изменение баланса за период
			select
			sum(k1.actual*k2.tagvalue) as am
			from
			FIN01 k1
			inner join FIN06 k2 on k2.srcitemno = k1.itemno
			where k2.tagitemno = d.tagitemno and k1.pdate = d.pdate
		),0)

		,am4=isnull((
		-- Остаток на конец периода
			select
			sum(k1.actual*k2.tagvalue)
			from FIN01 k1
			inner join FIN06 k2 on k2.srcitemno = k1.itemno
			where k2.tagitemno = d.tagitemno and k1.pdate < d.pdate
		),0)

from
-- курсор для расчетов = все балансовые показатели * на все периоды бюджета
(select top 100 percent p.pdate,t.tagitemno from
(select distinct tagitemno from FIN06) t,
(select distinct pdate from FIN01) p order by p.pdate,t.tagitemno ) d
) d
7 дек 06, 11:09    [3503090]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm

Gluk, дурку здесь ты валяешь, следи за выражениями. А чтобы была видна разница, публикую еще раз. Копируй в блокнот, пока не удалили.


А без хамства можно ?
Этого решения я видимо не успел увидеть, мне попалось на глаза первое, не будете так добры
повторить и его ??? А я законспектирую, в блокнот :)
7 дек 06, 11:37    [3503293]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
А без хамства можно ?

С удовольствием, если Вы не будете впредь.

Gluk (Kazan)
Этого решения я видимо не успел увидеть, мне попалось на глаза первое, не будете так добры
повторить и его ???

Первым (то что Вам попалось на глаза) был алгоритм расчета средневзвешенной себестоимость, только с курсором. По своей сути это идентичные вещи - периодическая калькуляция, когда показатели следующего периода строятся последовательно на основании показателей предыдущего.

DECLARE
    @ITEMNO VARCHAR(24) -- код товара
    ,@_ITEMNO VARCHAR(24)-- текущая позиция
    ,@D DATETIME -- дата периода
    ,@OPENUM INT -- начальный остаток
    ,@_OPENUM INT -- расчетный остаток для след. периода
    ,@OPENCOST DECIMAL(18,2)-- начальная стоимость
    ,@_OPENCOST DECIMAL(18,2)-- расчетная стоимость для след. периода
    ,@INPUTUM INT -- поступление, кол-во
    ,@INPUTCOST DECIMAL(18,2)-- стоимость поступивщего
    ,@OUTUM INT -- выбытие, кол-во
    ,@OUTCOST DECIMAL(18,2)-- расчетная себестоимость
    ,@I INT -- номер периода

DECLARE C CURSOR FOR
SELECT TOP 100 PERCENT ITEMNO,PDATE,OH,AMOH,P,AMP,S
FROM INV01 WHERE PDATE >= :StartPeriod
ORDER BY ITEMNO,PDATE

OPEN C

FETCH NEXT FROM C INTO @ITEMNO,@D,@OPENUM,@OPENCOST,@INPUTUM,@INPUTCOST,@OUTUM
SET @_ITEMNO = @ITEMNO
SET @I = 0
SET @_OPENUM = @OPENUM
SET @_OPENCOST = @OPENCOST

WHILE @@FETCH_STATUS = 0
BEGIN
SET @OUTCOST = 0
IF (@_OPENUM + @INPUTUM) > 0
    SET @OUTCOST = (@_OPENCOST + @INPUTCOST)/(@_OPENUM + @INPUTUM)*@OUTUM

-- Обновление расчетной таблицы
IF @I > 0
    UPDATE INV01 SET
    OH = @_OPENUM
    ,AMOH = @_OPENCOST
    ,CMS = @OUTCOST
    WHERE ITEMNO = @ITEMNO AND PDATE = @D
ELSE
    UPDATE INV01 SET CMS = @OUTCOST
    WHERE ITEMNO = @ITEMNO AND PDATE = @D
-- Расчет остатков для следующего периода
SET @_OPENUM = @_OPENUM + @INPUTUM - @OUTUM
SET @_OPENCOST = (@_OPENCOST + @INPUTCOST) - @OUTCOST


FETCH NEXT FROM C INTO @ITEMNO,@D,@OPENUM,@OPENCOST,@INPUTUM,@INPUTCOST,@OUTUM
SET @I = @I + 1

IF @ITEMNO <> @_ITEMNO
BEGIN
        SET @_ITEMNO = @ITEMNO
        SET @I = 0
        SET @_OPENUM = @OPENUM
        SET @_OPENCOST = @OPENCOST
END -- новая позиция

END -- все позиции обработаны

CLOSE C
DEALLOCATE C
7 дек 06, 11:52    [3503419]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Gluk (Kazan)
А без хамства можно ?

С удовольствием, если Вы не будете впредь.


Не буду впредь что ? Не помню чтобы я вам хамил
Ладно, замяли

Коль пошла такая пьянка, было бы интересно увидеть результат работы вашего запроса
на тестовых данных, дабы проверить корректность работы.
7 дек 06, 12:10    [3503581]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
Коль пошла такая пьянка, было бы интересно увидеть результат работы вашего запроса
на тестовых данных, дабы проверить корректность работы.

Результат работы - формирование баланса денежных средств по периодам. Принцип тот же, что и при расчете себестоимости, формулы другие (в терминах оракловского MODEL - RULES). Вычисляются скользящие значения показателей на начало каждого периода, затем выполняется калькуляция периода, которая, в свою очередь, является входными данными для следующего периода и т.д. Ниже на картинке:
скользящим методом вычисляется прогнозный остаток денежных средств
23.Остаток на начало периода + 03.Выручка - 15.Затраты = 22. Остаток до оплаты импорта. - 06.Оплата по импорту = 23. Прогнозный остаток. И так по всем периодам в заданном интервале.
Картинка из работающей системы, корректность не первый год проверяется. Вопрос только в том, что размерность задачи для такого запроса вполне подходящая. Себестоимость по десяткам тысяч номенклатурных позиций считается курсором.

К сообщению приложен файл. Размер - 0Kb
7 дек 06, 12:45    [3503862]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
а вы не пробовали задуматься об OLAP?
приведенный скриншот - типичная сводная таблица, делается в несколько щелчков мышью....
7 дек 06, 13:24    [3504234]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
AAron
а вы не пробовали задуматься об OLAP?
приведенный скриншот - типичная сводная таблица, делается в несколько щелчков мышью....

Это и есть сводная таблица, сделаная в 4 щелчка мышью.
7 дек 06, 13:29    [3504279]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
p.s. Просто "под ней" именно OLTP данные, которые и обрабатываются запросами, один из которых приведен.
7 дек 06, 13:30    [3504295]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Результат работы


Нууу, это ведь немножко не та задача, которую давал SergSuper ???
7 дек 06, 14:06    [3504624]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
iscrafm
Результат работы


Нууу, это ведь немножко не та задача, которую давал SergSuper ???

я ж и говорю, те что нужно удалили просто :)
7 дек 06, 14:08    [3504636]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
хотя по сути они похожи, просто в примере SergSuper - одна запись определенного типа на интервал времени, а при таких периодических калькуляциях разнотипные наборы.
7 дек 06, 14:11    [3504664]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Моисеев Б.
Guest
iscrafm
Gluk (Kazan)
iscrafm
Результат работы


Нууу, это ведь немножко не та задача, которую давал SergSuper ???

я ж и говорю, те что нужно удалили просто :)

А повторите их тоже, я не успел записать... С результатами работы на тестовых данных...
7 дек 06, 14:26    [3504791]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Gluk (Kazan)
iscrafm
Результат работы


Нууу, это ведь немножко не та задача, которую давал SergSuper ???

я ж и говорю, те что нужно удалили просто :)


Ага, стерли из истории (с) "Назад в будущее"
А восстановить наших сил нет

Поэтому будем постить левые скрипты и делать вид, что они решают поставленную задачу.

Я правильно понял МЫСЛЬ ???
7 дек 06, 14:28    [3504804]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
Поэтому будем постить левые скрипты и делать вид, что они решают поставленную задачу.
Я правильно понял МЫСЛЬ ???

Какие левые? Вы пожалуйста внимательно читайте, смотрите.
1. Приведен реальный скрипт расчета средневзвешенной себестоимости, о которой шла речь + приведены правила расчета себестоимости.
2. Приведен запрос (на чистом SQL), который решает подобную задачу(формула только другая).

Или левыми скриптами Вы называете примеры использования оракловских аналитических функций в SQL?
Возможно я Вас не понял.
7 дек 06, 14:37    [3504889]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Какие левые? Вы пожалуйста внимательно читайте, смотрите.
1. Приведен реальный скрипт расчета средневзвешенной себестоимости, о которой шла речь + приведены правила расчета себестоимости.
2. Приведен запрос (на чистом SQL), который решает подобную задачу(формула только другая).

Или левыми скриптами Вы называете примеры использования оракловских аналитических функций в SQL?
Возможно я Вас не понял.


Гмм. Я смотрю на это так: SergSuper после N-го количества попыток сформулировал задачу (включая тестовые данные и соответствующие им результирующие данные), softwarer решил ее и выложил решение (не процедурное), вы выложили что-то не относящееся к делу (с другой формулой и без всякого признака начальных тестовых данных) и вспоминаете про какое-то мифическое решение, которое никто не успел рассмотреть и восстановить которое не представляется возможным, поскольку как и всякое произведение искусства ОНО неповторимо (хотя и делается 4-мя щелчками мыши).
Взамен вы выкладываете НЕЧТО решающее совсем другую задачу, которую до сих пор не смогли внятно сформулировать и не удосуживаетесь привести начальные данные. Очевидно, ваш скриншот нужно распечатать на цветном принтере, повесить на стену и любоваться на него (ни на что другое он не годится).

Ах да, забыл, свою несформулированную задачу (для которой даете решение на диалекте SQL), вы приводите как пример задачи не решаемой при помощи SQL.

Я ничего не упустил ???
7 дек 06, 14:57    [3505076]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
Очевидно, ваш скриншот нужно распечатать на цветном принтере, повесить на стену и любоваться на него (ни на что другое он не годится).

Ок, повесьте.

Gluk (Kazan)
Ах да, забыл, свою несформулированную задачу (для которой даете решение на диалекте SQL), вы приводите как пример задачи не решаемой при помощи SQL.

Есть такое понятие, как условия применения. Если Вы будете внимательно читать, все что пишется, то будет поменьше таких вопросов. Ссылки на конкретные посты приводить не буду, уже понятно что это не помогает.
Думаю обсуждать по этой теме больше нечего, переливание из пустого в порожнее.
7 дек 06, 15:07    [3505162]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Gluk (Kazan)
Очевидно, ваш скриншот нужно распечатать на цветном принтере, повесить на стену и любоваться на него (ни на что другое он не годится).

Ок, повесьте.

Gluk (Kazan)
Ах да, забыл, свою несформулированную задачу (для которой даете решение на диалекте SQL), вы приводите как пример задачи не решаемой при помощи SQL.

Есть такое понятие, как условия применения. Если Вы будете внимательно читать, все что пишется, то будет поменьше таких вопросов. Ссылки на конкретные посты приводить не буду, уже понятно что это не помогает.
Думаю обсуждать по этой теме больше нечего, переливание из пустого в порожнее.


А если ВЫ потрудитесь КОРРЕКТНО формулировать задачи и не менять их условие в процессе решения, их возможно кто-то сможет решать Абсолютно с Вами согласен, общение с Вами - пустая трата времени
7 дек 06, 15:14    [3505243]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
А если ВЫ потрудитесь КОРРЕКТНО формулировать задачи и не менять их условие в процессе решения, их возможно кто-то сможет решать Абсолютно с Вами согласен, общение с Вами - пустая трата времени

Как Вам еще корректней, помимо описания, формул и приведения действующих скриптов? И какие условия меняются? Вы наверное читаете один форум, а отвечаете в другой. Такое впечатление складывается.
И Вам, всего хорошего.
7 дек 06, 15:20    [3505293]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
iscrafm
Как Вам еще корректней


Последняя попитка: начальные данные где ?
Скринщот - результат чего ??? Или он все таки имеет самостоятельную художественную ценность ?
7 дек 06, 15:31    [3505374]     Ответить | Цитировать Сообщить модератору
 Re: CACHE и MSSQL  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
Gluk (Kazan)
Скринщот - результат чего ??? Или он все таки имеет самостоятельную художественную ценность ?

Ладно, давайте уже веселится, раз Вы настаиваете

Gluk (Kazan)
было бы интересно увидеть результат работы вашего запроса
на тестовых данных, дабы проверить корректность работы.


iscrafm
Результат работы - формирование баланса денежных средств по периодам.
Картинка из работающей системы, корректность не первый год проверяется.
7 дек 06, 15:46    [3505493]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 61 62 63 64 65 [66] 67 68 69 70 .. 106   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить