Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Computed Field / 20 сообщений из 20, страница 1 из 1
26.03.2008, 18:08
    #35215829
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Здравствуйте! У меня такая проблема: у меня есть несколько таблиц, в каждой есть столбец "количество". Мне нужно из всех имеющихся таблиц посчитать общую сумму этих столбцов. Когда я делаю это с помощью Computed Field, то он мне выводит колосальную сумму. Считает как-то некоректно. Можно ли в PowerBuilder решить както эту проблему корректно? Заранее спасибо.
...
Рейтинг: 0 / 0
26.03.2008, 18:17
    #35215854
sPaul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
можно увидеть source этого датавиндо?
...
Рейтинг: 0 / 0
26.03.2008, 18:23
    #35215870
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
ForestGumpЗдравствуйте! У меня такая проблема: у меня есть несколько таблиц, в каждой есть столбец "количество". Мне нужно из всех имеющихся таблиц посчитать общую сумму этих столбцов. Когда я делаю это с помощью Computed Field, то он мне выводит колосальную сумму. Считает как-то некоректно. Можно ли в PowerBuilder решить както эту проблему корректно? Заранее спасибо.
Может быть нужно наложить формат/округлить результат?
...
Рейтинг: 0 / 0
26.03.2008, 18:25
    #35215880
Mykola
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
select sum(t_tmp.nCountTable) as nCountAll
from
(
select sum("количество") as nCountTable from table_1 <where ...>
union all
select sum("количество") as nCountTable from table_2 <where ...>
.......
) as t_tmp
...
Рейтинг: 0 / 0
27.03.2008, 10:47
    #35216800
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Локшин МаркМожет быть нужно наложить формат/округлить результат?

Нет, это я пробовал. Фильтр тоже ставил. Дело в том, что когда добавляю одну таблицу и выбираю нужную мне колонку в пеинтере, то вычисляемое поле посчитает правильно. Если я добавлю еще одну колонку с другой добавленной таблицы, то сумма выходит странная(к примеру если сумма двух столбцов должна быть 2 , то поле показывает 4 и так далее) Чудеса какие-то :(
...
Рейтинг: 0 / 0
27.03.2008, 11:41
    #35217065
Ikar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
ForestGump...
Дело в том, что когда добавляю одну таблицу и выбираю нужную мне колонку в пеинтере, то вычисляемое поле посчитает правильно. Если я добавлю еще одну колонку с другой добавленной таблицы, то сумма выходит странная(к примеру если сумма двух столбцов должна быть 2 , то поле показывает 4 и так далее) Чудеса какие-то :(Хм... А уточните, пожалуйста, как Вы связываете таблицы в запросе?
...
Рейтинг: 0 / 0
27.03.2008, 11:59
    #35217162
Mykola
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
проверте количество записей которое возвращает dw c одной таблицей а потом с двумя.
...
Рейтинг: 0 / 0
27.03.2008, 12:34
    #35217325
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
IkarХм... А уточните, пожалуйста, как Вы связываете таблицы в запросе?

В пеинтере связь между таблицами "<>" , так как ключевая колонка "Номер" разная для всех таблиц. Это порядковые номера для строк таблиц, которые потом будут отображаться в отчете. От себя добавлю, что с PowerBuilder'ом работаю сравнительно недавно и могу допустить какую нибудь элементарную ошибку. Мне он понравился за простоту. Застрял вот на этом :(
...
Рейтинг: 0 / 0
27.03.2008, 12:40
    #35217358
Computed Field
у вас sql запрос неправильный.
...
Рейтинг: 0 / 0
27.03.2008, 14:22
    #35217844
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
ForestGump IkarХм... А уточните, пожалуйста, как Вы связываете таблицы в запросе?

В пеинтере связь между таблицами "<>" , так как ключевая колонка "Номер" разная для всех таблиц. Это порядковые номера для строк таблиц, которые потом будут отображаться в отчете. От себя добавлю, что с PowerBuilder'ом работаю сравнительно недавно и могу допустить какую нибудь элементарную ошибку. Мне он понравился за простоту. Застрял вот на этом :(
Лучше выучить хоть немного SQL и писать запросы текстом, чем возиться с визуальным построением запросов.
...
Рейтинг: 0 / 0
27.03.2008, 16:32
    #35218513
Ikar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Локшин Марк...
Лучше выучить хоть немного SQL и писать запросы текстом, чем возиться с визуальным построением запросов.+1
...
Рейтинг: 0 / 0
27.03.2008, 16:35
    #35218521
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Если в DW есть группы c итогами по ним (compute_1=sum(aaa for #1) ) и по этим итогам есть общий итог (compute_2=sum(compute_1 for all), то сумма в каждой группе будет умножена на кол-во записей в группе при подсчете общего итога.
...
Рейтинг: 0 / 0
27.03.2008, 17:06
    #35218682
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Спасибо всем кто откликнулся! Поколдую еще с запросами...
...
Рейтинг: 0 / 0
07.04.2008, 14:45
    #35239854
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Поколдовал я с запросами но увы все осталось по-прежнему...
Ну вот к примеру:

SELECT sum(столбец1 + столбец2 )
FROM таблица1, таблица2
WHERE столбец1 > 0 AND столбец2 > 0
GROUP BY столбец1, столбец2;

Сумма всего этого будет 12, вместо положеных 5. Подскажите пожалуйста, что я делаю неправильно?
...
Рейтинг: 0 / 0
07.04.2008, 14:49
    #35239879
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Связь между таблицами отсутствует
sql использует дискретную математику, так что либо в теории либо на практике принципы надо знать
таблица1.какая-то колонка1 = таблица2.какая-то колонка2
-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
07.04.2008, 15:23
    #35240057
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Извините, это моя ошибка - поспешил :). Связь у меня "<>" и результат тот же. Я вот думаю: я работаю в PB 9, и быть может здесь нужен другой подход, нежели в PB 6. Скажите между ними есть существенная разница?
...
Рейтинг: 0 / 0
07.04.2008, 15:26
    #35240067
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
SQL он и в африке SQL
Какое нафиг неравно
У тебя перемножаются две таблицы, что ты еще хочешь получить
RTFM!!!
STFW!!!
-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
07.04.2008, 15:46
    #35240152
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Ну вобщето я сумму пытаюсь посчитать.... Поменял связь, результат тотже... вместо 5 получаеться 12. Бред какойто
...
Рейтинг: 0 / 0
07.04.2008, 16:09
    #35240246
Yurk0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
так ведь Mykola дал тебе правильный ответ !
Mykolaselect sum(t_tmp.nCountTable) as nCountAll
from
(
select sum("количество") as nCountTable from table_1 <where ...>
union all
select sum("количество") as nCountTable from table_2 <where ...>
.......
) as t_tmp
вместо
Код: plaintext
1.
2.
3.
4.
SELECT sum(столбец1 + столбец2 )
FROM таблица1, таблица2
WHERE столбец1 >  0  AND столбец2 >  0 
GROUP BY столбец1, столбец2;
напиши
Код: plaintext
1.
2.
3.
4.
5.
select sum(t_tmp.nCountTable) as nCountAll
from(
select sum("столбец1") as nCountTable from таблица1 where  "столбец1" >  0 
union 
select sum("столбец2") as nCountTable from таблица2 where "столбец2" >  0 
) as t_tmp
...
Рейтинг: 0 / 0
07.04.2008, 16:22
    #35240300
ForestGump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Computed Field
Yurk0так ведь Mykola дал тебе правильный ответ !

Действительно, посчитало правильно! :) Ребят спасибо вам обоим! Буду дальше разбираться...
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Computed Field / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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