Skip to content

chobostar/calculate_markup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ PostgreSQL с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ вычислСния Π½Π°Ρ†Π΅Π½ΠΊΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ интСрполяции

price_modifiers._calculate_markup(price numeric, markups numeric[])

ВычисляСт ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ Π½Π°Ρ†Π΅Π½ΠΊΠΈ ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Ρ†Π΅Π½Π΅ ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ схСмС Ρ†Π΅Π½ ΠΈ Π½Π°Ρ†Π΅Π½ΠΎΠΊ. ΠžΠΊΡ€ΡƒΠ³Π»ΡΠ΅Ρ‚ Π΄ΠΎ 2 Π·Π½Π°ΠΊΠΎΠ² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

  • price - Ρ†Π΅Π½Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π½Π°Ρ†Π΅Π½ΠΊΡƒ
  • markups - Π½Π°Ρ†Π΅Π½ΠΊΠΈ, отсортированныС Π² порядкС убывания price. Как массив ΠΈΠ· ΠΏΠ°Ρ€ (Ρ†Π΅Π½Π°;Π½Π°Ρ†Π΅Π½ΠΊΠ°)

Бпособ установки

make
make install
make installcheck
psql -c 'create extension calculate_markup'

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Ρ†Π΅Π½Π° находится ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ элСмСнтом:

SELECT price_modifiers._calculate_markup(75000, '{{100000,7.0},{50000,8.0},{10000,10.0},{1000,12.0},{100,22.0},{0,22.0}}'::numeric[]);
--
7.50

Ρ†Π΅Π½Π° находится Π½Π° 4-ΠΌ элСмСнтС:

SELECT price_modifiers.c_calculate_markup(1000, '{{100000,7.0},{50000,8.0},{10000,10.0},{1000,12.0},{100,22.0},{0,22.0}}'::numeric[]);
--
12.0

Ρ†Π΅Π½Π° Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ Ρƒ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта:

SELECT price_modifiers.c_calculate_markup(150000, '{{100000,7.0},{50000,8.0},{10000,10.0},{1000,12.0},{100,22.0},{0,22.0}}'::numeric[]);
--
7.0

About

example of PostgreSQL extension with function for linear interpolation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published