Customer(ID, name, birthDate, city); Room(number, floor, beds, roomtype, price); Bookings(Customer, roomNumber, floor, checkInDate, checkOutDate); select Customer from Bookings join Room on(Bookings.num = camera.roomNumber and Bookings.floor= Room.floor) where (Bookings.Customer, Bookings.floor) not in (select number, floor from Room where roomType != 'economic') select b.Customer from Bookings b join Room r on b.num = r.roomNumber and b.floor = r.floor group by b.Customer having min(roomType) = max(roomType) and min(roomType) = 'economic';