Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL:Calculando os dias restantes de assinaturas com base em pagamentos


Eu sugiro que você não armazenou dados suficientes em sua tabela.

Como está agora, você sempre precisará analisar todos os pagamentos anteriores para verificar se o atual está ativo ou aguardando ativação, um grande impacto no desempenho e uma consulta mais complexa.

Um expires_at calculado coluna para payments , que é calculado com a adição de um novo pagamento como MAX(payments.expires_at) + INTERVAL service_plans.days DAYS permitirá que você calcule o número de dias restantes observando apenas uma linha... e se um usuário está ou não em um plano.