Task: Text to Code
Input (English): Step 1: find the dorm_name of Dorm table.
Step 2: For each row in Has_amenity table, find corresponding rows in Dorm table and in Dorm_amenity table.
Step 3: find dorm_name of the results of step 2 whose amenity_name equals Study Room.
Step 4: show the rows that are in the results of step 1 but not in the results of step 3
Output (English): SELECT T1.dorm_name FROM Dorm AS T1 EXCEPT SELECT T1.dorm_name FROM Dorm AS T1 JOIN Dorm_amenity AS T2 JOIN Has_amenity AS T3 ON T1.dormid = T3.dormid AND T3.amenid = T2.amenid WHERE T2.amenity_name = "Study Room"