2

Encadeamento não cabe. Este trecho é o formato real do que estava no arquivo de desconto, com os nomes trocados:
Tente representar isso em colunas de uma tabela. Você vai acabar escrevendo um interpretador dentro do seu próprio sistema, e aí construiu um motor de regras sem depurador, sem teste e sem ninguém que o conheça além de você.

Eu achei esse modelo simples:

qtde_minimatipodt_inicialdt_finalvalor
50distributor1920-01-012023-01-010.065
50distributor2023-01-020.050
50other1920-01-010.080

Alí ele usa pela data do contrato, se fosse necessário, poderia usar colunas de validade.

Para cada critério que tiver para saber o preço ou desconto, basta adicionar uma coluna na tabela. Na consulta, filtra por ele.

Carregando publicação patrocinada...