Do a web search on these two phrases: "Single Table Inheritance" and "Class Table Inheritance". You will find a lot of articles by people who have worked on the same kind of problem before. Some of the articles are based on Martin Fowler's book, Patterns of Enterprise Application Architecture. What follows is a brief summary of what some of the articles say.
Car and Apartment are subclasses of a more generic class, which I'll call RentalItems or just plain Items. if you were to build an object model for this scenario, you would use the inheritance feature of subclasses to do a lot of the work for you. Your app may reflect this.
The Relational Data Model, as such, has no features for inheritance. Some database products have added features to support inheritance, but MySQL is not one of them, to my knowledge. So the problem becomes how to design a system of tables that will mimic inheritance, and make it easy for your app to retrieve the data it needs.
Single table inheritance combines all the rental items into one big table, with many columns (fields) that only pertain to cars or only pertain to apartments, etc. This is quite simple and easy, but it does end up with a lot of NULLS in the data. NULLS can make sifting the data a little confusing and slow.
Class Table Inheritance involves making a single generic table, let's call it Item, for all the rental items. This table contains properties that are common to all rental items, such as description and price. Then there are specialized tables for Car, Apartment, etc. containing specialized data that pertain to each subclass.
You may want to make all the tables, Item, Car, Apartment, etc. use the same shared primary key. This key, let's call it ItemID, is defined in the usual way in the generic Item table. In the other tables, it's declared as a Primary Key, and also as a Foreign Key referencing ItemID in the Item table. When new items are to be added, the app takes care of putting the correct properties in the correct tables, and also of propagating the ItemId from the Item table to one or more of the other tables.
You might want to add views to provide joint views of Car and Item, Apartment and Item, etc. These joint views will run pretty fast for moderate amounts of data, because of indexes that get created when you declare a primary key.
This is just an outline. The articles have examples, diagrams, and the like.