I have a DB with 4 tables: booking, hotel, guest and room. I'm trying to get my SQL statement (in Oracle) to produce the average room price of each hotel. This is currently what i have:

```
SELECT HOTEL.H_NAME "HOTEL NAME", ROUND(AVG (R_PRICE), 1) "AVERAGE ROOM PRICE"
FROM ROOM, HOTEL
WHERE HOTEL.H_NAME = 'Shangra_La'
OR HOTEL.H_NAME = 'Hilton'
OR HOTEL.H_NAME = 'Sheraton'
GROUP BY HOTEL.H_NAME
ORDER BY HOTEL.H_NAME;

```

From what I thought, that statement will select the hotel name and average price of all the rooms in the 'Shangra\_la', 'Hilton' and 'Sheraton' and order them by the name of the hotel however when I do this, I get the same average for each hotel which is wrong. This is my output:

```
H_NAME      AVG. R_PRICE
Hilton      253.5
Shangra_La  253.5
Sheraton    253.5

```

Below is the table data for ROOM:

```
insert into room values
('1','H100','S',220.00);
insert into room values
('2','H100','D',230.00);
insert into room values
('3','H100','F',310.00);
insert into room values
('1','H200','S',260.00);
insert into room values
('2','H200','D',170.00);
insert into room values
('3','H200','S',250.00);
insert into room values
('4','H200','F',180.00);
insert into room values
('5','H200','F',295.00);
insert into room values
('1','H300','D',200.00);
insert into room values
('2','H300','S',420.00);

```

AND HOTEL:

```
insert into hotel values
('H100','Sheraton','Melbourne');
insert into hotel values
('H200','Shangra_La','Sydney');
insert into hotel values
('H300','Hilton', 'Perth');

```

Have I structured the statement incorrectly? What can I do to resolve this issue? Hopefully i have provided enough information.