1

私は何時間もの間、2つのテーブルから乗数の行から減算する方法を探していましたか?mySQLワークベンチからエラーが発生し続けるので。

私は2つのテーブルを持っていますhotelhotel_stay

ユニークな部屋の数から個々の容量を差し引いた数を取得する必要があります

+--------------------+------------------+
hotel_stay
+--------------------+------------------+
room (PK)
99
99
10
10
10

+--------------------+------------------+
hotel  
+--------------------+------------------+ 
room(FK)  |   capacity
99        |   10
10        |   12

出力はホテルと同じテーブルにありますか、それとも私は私たちにASをしなければなりませんか?

room | capacity
99   | 8      
10   | 9   
4

1 に答える 1

1

私はあなたの質問を完全に理解しているかどうかわかりません。ただし、次のようにして、各部屋の合計容量を取得できます。

select h.room, 
   (h.capacity - hs.TotalBooked) as Capacity
from hotel h
inner join 
(
    select COUNT(room) as TotalBooked, 
       Room
    from hotel_stay
    group by room
) hs
    on h.room = hs.room

SQL FiddlewithDemoを参照してください。これにより、次の結果が返されます。

| ROOM | CAPACITY |
-------------------
|   10 |        9 |
|   99 |        8 |
于 2013-02-01T17:54:52.427 に答える