Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Funkcja wyliczająca odsetki
koleq
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 25.03.2008

Ostrzeżenie: (0%)
-----


Witam. Mam pytanie, jak napisać funkcję wyliczającą odsetki za przetrzymanie wypożyczonej książki. Napisałem perspektywę Statystyka_wyp, w której mam dane klienta, książkę jaką wypożyczył, datę wypożyczenia i oddania oraz odsetki za przetrzymanie książki po dozwolonym terminie - 14 dni. I mi wylicza te odsetki, tylko, że muszę napisać jakąś funkcję IF, ponieważ liczy mi również odsetki, jeżeli ktoś oddał książkę w dopuszczalnym terminie:/. Nie wiem czy można to zrobić bez tworzenia funkcji.

Poniżej kod tworzący tą perspektywę:

create view statystyka_wyp AS select concat(Nazwisko,' ',Imie) AS nazwisko_i_imie, Tytul AS wypozyczyl, Dataw AS dnia, Dataz AS zwrot, (((to_days(Dataz))-(to_days(Dataw)))-14)*0.5 AS odsetki FROM klient k, ksiazka ks, wypozyczalnia w WHERE k.id=w.klient_id AND ks.id=w.ksiazka_id ORDER BY nazwisko;


Czy macie jakieś pomysły jak to zrealizować? byłbym bardzo wdzięczny:)

już nie ważne poradziłem sobie z tym winksmiley.jpg
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
kitol
post
Post #2





Grupa: Zarejestrowani
Postów: 162
Pomógł: 26
Dołączył: 19.01.2007

Ostrzeżenie: (0%)
-----


Nie podałeś rozwiązania, a może się komuś przydać. Podam moje:

Z IF-em
  1. SELECT IF(DATEDIFF(data_oddania,data_wypozyczenia)>14,DATEDIFF(data_oddania,data_wypozyczenia)*kara_za_dzien,0)


bez IF-a

  1. SELECT (DATEDIFF(data_oddania,data_wypozyczenia)>14)*DATEDIFF(data_oddania,data_wypozyczenia)*kara_za_dzien
Go to the top of the page
+Quote Post
koleq
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 25.03.2008

Ostrzeżenie: (0%)
-----


Przepraszam, już podaję: z IF-em

CODE
CREATE VIEW statystyka_wyp AS SELECT concat(Nazwisko,' ',Imie) AS nazwisko_i_imie, Tytul AS wypozyczyl, Dataw AS dnia, Dataz AS zwrot, IF(((to_days(Dataz))-(to_days(Dataw)))>14,(((to_days(Dataz))-(to_days(Dataw)))-14)*0.5,'brak') AS odsetki FROM klient k, ksiazka ks, wypozyczalnia w WHERE k.id=w.klient_id AND ks.id=w.ksiazka_id;
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 05:03