![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 25.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Potrzebuję pomocy w opracowaniu takiego mechanizmu wyszukiwania w bazie danych. Mam zmienne warunki : Dzienne zapotrzebowanie na białko jest na poziomie od 60 do 180g. To białko muszę rozłożyć na pięć do siedmiu posiłków.Niestety nie mogą być rozłożone równomiernie tylko przypadkowo co komplikuje sprawę. a więc: białko na dzień 120g liczba posiłków 6 Teraz muszę to podzielić na pięć nierównomiernych/przypadkowych porcji z 20% marginesem co da przedział od 96 do 144g na dzień. Czyli np:
I teraz zapytanie do bazy w pętli: znajdź posiłek o zawartości białką najbardziej zbliżonej do x, gdzie x to zawartość białka w posiłku. Nie mogę stosować klauzuli where bialko = x ponieważ wartości w bazie są różne.Muszę odnaleźć najbardziej zbliżoną wartość. Do głowy mi przychodzi teraz obliczenie marginesu 20% dla każdego posiłku min i max i użycie tego w klauzuli where. Może ma ktoś inny pomysł? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 807 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Rekord w zakresie możesz znaleźć jednym zapytaniem, będzie on spełniony jeśli: wartość jest w zakresie lub jest to mniejsza wartość z: minimalna różnica dolnej wartości zakresu i zawartości w potrawie lub minimalna różnica górnej wartości zakresu i zawartości w potrawie.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 05:58 |