Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DELIMITER $$
- CREATE FUNCTION Days (s_date DATE, e_date DATE) RETURNS INT BEGIN
- IF (e_date IS NULL) THEN
- RETURN DATEDIFF(CURDATE(), s_date);
- ELSE
- RETURN DATEDIFF(e_date, s_date);
- END IF; END $$
- DELIMITER ;
- SELECT FIO, Days(Settlement_date, Guests) FROM Guests;
- DELIMITER $$
- CREATE PROCEDURE Cheque (passport VARCHAR(10)) BEGIN
- SELECT FIO, Settlement_date, Eviction_date, Room, Rooms.Class, COST * Days(Settlement_date, Eviction_date)
- 1
- FROM Guests, Rooms, Room_Classes
- WHERE Guests.Passport = passport AND Guests.Room = Rooms.ID AND Rooms.Class = Room_Classes.Class;
- SELECT Service, Amount, COST FROM Provide_Services WHERE Guest = passport;
- SELECT SUM(Provide_Services.COST) + (COST * Days(Settlement_date, Eviction_date)) AS 'Общая стоимость'
- FROM Provide_Services, Guests
- WHERE Provide_Services.Guest = passport AND Guests.Passport = passport;
- END $$
- DELIMITER ;
- CALL Cheque('aaaabbbbcc');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement