1 (edited by sign2 2015-02-07 12:08:45)

Topic: Вычисляемые поля

Имеется таблица, в которой находятся поля с количеством проведенных койко-дней.
Требуется посчитать сумму отдельных койко-дней в диапозоне от 1 до 5, от 6 до 10, от 11 до 20, от 21 до 30 и свыше 30 дней.
Подскажите, как можно реализовать данный расчет?
Спасибо!

Re: Вычисляемые поля

Считает сумму койкодней от 1 до 5

(SELECT SUM(поле_койкодни) FROM tablename WHERE поле_койкодни > 0 AND поле_койкодни < 6)

можете приложить проект к сообщению, постараюсь помочь.

Dmitry.

3 (edited by sign2 2015-02-07 19:08:03)

Re: Вычисляемые поля

Спасибо! Всё понятно.

Re: Вычисляемые поля

Всё правильно считается, но я не могу посчитать отдельно по месяцам. Считается вся таблица целиком, за все месяцы.
Вывожу на грид один месяц, но сумма получается за все месяцы.
Помогите разобраться.
Спасибо.

Re: Вычисляемые поля

Приложите пожалуйста ваш проект к сообщению, постараюсь помочь.

Dmitry.

Re: Вычисляемые поля

Посылаю проект базы

7 (edited by sign2 2015-02-08 17:52:14)

Re: Вычисляемые поля

Вот он

Post's attachments

Attachment icon base.rar 125.34 kb, 538 downloads since 2015-02-08 

Re: Вычисляемые поля

В вашем случае пришлось сделать поиск с помощью кнопки с действием "SQL запрос"
на форме calc, кнопка "Расчет (SQL)"


аналогично можете повторить и для других расчетов койкодней.


Вычисляемые поля можно удалить, т.к. больше не нужны.
Проект приложил к сообщению.

Post's attachments

Attachment icon base_fixed.rar 213.43 kb, 598 downloads since 2015-02-09 

Dmitry.

Re: Вычисляемые поля

Огромное Вам спасибо!

Re: Вычисляемые поля

Дмитрий. Вот тебе еще один глюк касающийся редактора форм. Проект base_fixed, как я понял, был сделан на ОООЧЕНЬ большом мониторе. я открыл его на нормальном мониторе и при попытке выделить таблицу полезли глюки со смещением таблицы непонятно куда.
попутно замечание: делать формы в расчете на то что что у всех пользователей мониторы размером км на км - не есть хороший тон в программировани. в таких случаях при запуске формы подгоняется её размер под размер дисплея а также используются якоря. т.к. при запуске этой программы на моем мониторе кнопки оказались скрыты под нижним краем формы. это при том что форма развернута на весь экран

Re: Вычисляемые поля

DenNik
Знаю на счет данного бага, исправил его, но пока не выкладывал исправленную версию.


На счет замечания )
я лишь исправил ошибку в данном проекте, размеры форм изначально были такими, само собой, необходимо настроить свойство компонентов Anchors, чтобы размеры компонентов менялись в зависимости от размера окна.

Dmitry.

Re: Вычисляемые поля

замечание я автору проекта адресовал )
теперь вопрос по вычисляемым полям
у меня есть три поля: Фамилия,Имя,Отчество
как сделать вычисляемое поле Ф+И+О?
почему ругается на конструкцию?

group_concat(author.surname,author.name,author.lastname,' ')

Re: Вычисляемые поля

DenNik
Попробуйте так:

author.surname || ' ' || author.name || ' ' || author.lastname
Dmitry.

Re: Вычисляемые поля

Доброго вечера!

Небольшой вопросик:
в таблице есть колонка с вычисляемыми полями. Что нужно, чтобы видеть внизу таблицы сумму по этой колонке?

Re: Вычисляемые поля

так работает. а почему функция не работает?

16 (edited by DenNik 2015-02-09 18:27:54)

Re: Вычисляемые поля

ага. не совсем работает. когда одно из полей пустое, вычисляемое поле содержит пустоту.
http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=596&amp;download=0

Post's attachments

Attachment icon 1111.png 41.96 kb, 303 downloads since 2015-02-09 

Re: Вычисляемые поля

DenNik wrote:

ага. не совсем работает. когда одно из полей пустое, вычисляемое поле содержит пустоту.

Ага, точно. Спасибо. И как сама не догадалась:)

Re: Вычисляемые поля

Milla.Makova wrote:
DenNik wrote:

ага. не совсем работает. когда одно из полей пустое, вычисляемое поле содержит пустоту.

Ага, точно. Спасибо. И как сама не догадалась:)

за что спасибо-то? каким образом я ответил на твой вопрос? smile

Re: Вычисляемые поля

за что спасибо-то? каким образом я ответил на твой вопрос? smile

Указал почему так происходит.

Ну тогда еще один вопрос.
Хочу видеть число с двумя знаками после запятой, даже если там нули. Но видимо они обрубаются автоматически.
И в вычисляемых полях и даже те, которые вручную заносишь.

Re: Вычисляемые поля

DenNik
тогда так

ifnull(author.surname,'') || ' ' || ifnull(author.name,'') || ' ' || ifnull(author.lastname,'')
Dmitry.

Re: Вычисляемые поля

Milla.Makova wrote:

Ну тогда еще один вопрос.
Хочу видеть число с двумя знаками после запятой, даже если там нули. Но видимо они обрубаются автоматически.
И в вычисляемых полях и даже те, которые вручную заносишь.


Можете создать вычисляемое поле такого вида:

printf('%.2lf', fieldname)

где fieldname - является полем с типом Вещественное число

Dmitry.

Re: Вычисляемые поля

я все же хочу узнать как работает group_concat

Re: Вычисляемые поля

DenNik wrote:

я все же хочу узнать как работает group_concat

данная функция является агрегатной, и в вашем случае не подойдет, например ее можно использовать так

SELECT group_concat(firstname) FROM person

в результате получим: ИваноПетровСидоров


либо  так

SELECT group_concat(firstname,'-') FROM person

в результате получим: Ивано-Петров-Сидоров

Dmitry.