Query Multiple tables in MS Access
Your query is missing AND C.Accommodation_ID = B.Accommodation_ID

If you are just getting started with SQL then you might consider building simple queries like this in the Access query designer and then switch to SQL view to see what the query designer has generated. In your case we have



and Access generates the following SQL (which I've indented for clarity)

SELECT 
    Instance.Description, 
    City.CityName, 
    Accommodation.CategoryType
FROM 
    (
        City 
        INNER JOIN 
        Instance 
            ON City.City_ID = Instance.City_ID
    ) 
    INNER JOIN 
    Accommodation 
        ON Instance.Accommodation_ID = Accommodation.Accommodation_ID
WHERE (((City.CityName)="Melbourne") AND ((Accommodation.CategoryType)="Hotel"));


Note that the query uses INNER JOIN syntax, which is generally preferred over the older method of putting the join conditions in the WHERE clause.