запрос, чтобы получить ежемесячную сумму, используя mysql - PullRequest
1 голос
/ 06 июля 2011

membertomships таблица

  • membership_startdate (такие значения, как 2011-01-12, 2011-03-02)
  • membership_Enddate (значения 2012-01-12, 2012-03-02)
  • membership total amount (такие как 300,00, 400,00)
  • member_id

member таблица

  • member_id

Могу ли я получить ежемесячную сумму, которую член платит, например, по следующей таблице:

member_id   monthly amount
----------------------------
1           30.00
2           40.00
3           50.00                  
4           10.00

Я пробовал это, но указывал общую сумму до указанной даты.

TIMESTAMPDIFF (MONTH, membership_startdate, '2011-05-10') * `membership total amount` As AMOUNTGIVENDATE ,

Теперь я хочу денег в месяц.

Ответы [ 2 ]

1 голос
/ 06 июля 2011
  1. Найдите функцию SQL, которая скажет вам количество месяцев между датой начала и датой окончания
  2. Возьмите общее значение и разделите его на количество месяцев

Примерно это может выглядеть примерно так ...

     SELECT 
         member_id, 
         30*membership_total_amount/DateDiff(membership_enddate, membership_startdate) As monthly_amount
     FROM
         member

Вам нужно будет посмотреть, какие функции даты поддерживает mysql.См. Документацию mysql

0 голосов
/ 06 июля 2011

Вы просите вычислить сумму за произвольную единицу времени , верно?Как вы рассчитываете это (должно быть довольно легко понять)?

Вот подсказка: у вас уже есть дивиденды.И у вас уже есть представление периода времени (даты начала / окончания).Вы должны выяснить, делитель.Как ты мог это сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...