recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment implémenter un solde décroissant à l'aide de MySQL

<p>Comment créer une requête de solde dégressif à l'aide de MySQL pour calculer l'amortissement en comptabilité</p> <p>Par exemple, l'équipement coûte 16 000 $, a une durée de vie utile prévue de 5 ans et un taux d'amortissement de 40 %. Dépréciation</p> <pre class="brush:php;toolbar:false;">Année Valeur comptable de départ Taux d'amortissement Montant de l'amortissement Valeur comptable de fin 1 16 000 40% 6 400 9 600 2 9 600 40% 3 840 5 760 3 5 760 40% 2 304 3 456 4 3 456 40% 1 382,40 2 073,60 5 2 073,60 40 % 829,44 1 244,16≪/pré> <p>Comment puis-je créer une fonction/requête pour obtenir les résultats ci-dessus ? Merci</p>
P粉473363527P粉473363527454 Il y a quelques jours674

répondre à tous(1)je répondrai

  • P粉917406009

    P粉9174060092023-09-02 14:19:13

    Vous pouvez utiliser le CTE récursif pour obtenir les résultats souhaités. Par exemple :

    with recursive
    p as (select 16000.00 as book_value, 0.4 as rate, 5 as total_years),
    y (year, book_value_start, rate, depreciation, book_value_end) as (
      select 1, book_value, rate,
        round(rate * book_value, 2),
        book_value - round(rate * book_value, 2)
      from p
     union all
      select
        y.year + 1, y.book_value_end, y.rate,
        round(y.rate * y.book_value_end, 2),
        y.book_value_end - round(y.rate * y.book_value_end, 2)
      from y
      cross join p
      where y.year < p.total_years
    )
    select * from y order by year

    Résultat :

    year  book_value_start  rate  depreciation  book_value_end 
     ----- ----------------- ----- ------------- -------------- 
     1     16000.00          0.4   6400.00       9600.00        
     2     9600.00           0.4   3840.00       5760.00        
     3     5760.00           0.4   2304.00       3456.00        
     4     3456.00           0.4   1382.40       2073.60        
     5     2073.60           0.4   829.44        1244.16

    Voir un exemple courant sur DB Fiddle.

    REMARQUE : Les trois paramètres sont définis dans la deuxième ligne. Si vous souhaitez modifier la valeur de départ, le taux d'intérêt ou le nombre d'années, effectuez vos modifications ici.

    répondre
    0
  • Annulerrépondre