Jak wybrać odpowiedni podatek samochodowy zależnie od emisji co2.

0

Witam,

Staram się w jednym zapytaniu sql wybrać odpowiedni podatek zależny od emisji co2.
Są dwa progi. Pierwszy jest do emisji 95, a drugi powyżej.
Przykład emisja 55 szukamy najbliższej wartość i zaokrąglamy w górę, czyli podatek 9, bo wartość znajduje się pomiędzy 50-75 więc bierzemy wyższą wartość. 51 tak samo, zaokrąglamy w górę i mamy podatek 9. Po przekroczeniu 95, sytuacja się zmienia. Muszę wybrać niższą wartość. Np 113 emsija co2, więc wartość znajduje się pomiędzi 110 i 115 więc podatek 17, ponieważ zakrąglamy w dół.

Tabela:
http://s28.postimg.org/cashj9kpp/Capture.png

2
SELECT min(podatek) FROM twoja_tabela WHERE emisja-co2 >= 55 

Edycja: chociaż zapytanie to zakłada, że podatki wzrastają proporcjonalnie do emisji. Jeżeli taka sytuacja nie odzwierciedla twojego modelu (a w realnym życiu będzie odzwierciedlać, no ale załóżmy jakis nietypowy przypadek, że nie), to napisałabym to np. tak:

 SELECT podatek FROM twoja_tabela WHERE emisja-co2 = (SELECT min(emisja-co2) FROM twoja_tabela WHERE emisja-co2 >= 55) 
1
select
  case when emisja <= 95 then
    (select top 1 podatek from tabela_z_emisjami where emisja-co2 >= emisja order by emisja-co2)
  else
    (select top 1 podatek from tabela_z_emisjami where emisja-co2 <= emisja order by emisja-co2 desc)
  end podatek
0

Dzięki chłopaki. Oba przypadki działają. Bardziej mi pasuje @abrakadaber, ponieważ w jednym zapytaniu mam wszystko. Ładnie to napisaliście i prosto. Super.

1 użytkowników online, w tym zalogowanych: 0, gości: 1