0
SQL Server 2008のSQLサーバー[クエリ+複数の結合条件]
こんにちは
は
SELECT * FROM Rooms
WHERE RoomID in
(SELECT t1.RoomId FROM
(Rooms t1 INNER JOIN
(SELECT RoomID, SUM(quantity) AS QTY FROM Room_Item GROUP BY RoomID
HAVING SUM(Quantity) = 0) t2 ON t1.RoomID = t2.RoomID))
書かれたクエリの上に結果を返す私のクエリは私の部屋のroomidを返しますですそれには何も含まれていません(数量= 0)、 ですが、今は建物の結果を除外したいです。
私は特定の部屋のリストを持っています
select roomid from rooms where buildingblockid in (select buidingblockid from buildingblock where buildigID = 1)
以下のような建物はので、私のクエリは
復帰割り当てられた項目が0にされ、構造は以下の通りです数= 1
テーブルを構築することにより、部屋をフィルタリング部屋のテーブルからroomidになります - ONLY ESSENTIAL FIELDSが
rooms => roomid(PK), buildingblockID(FK), roomname
room_item => roomitemid(PK), roomid(FK), itemid(FK), quantity
item => itemid(PK), itemname
buildingblock => buildingblockid(PK), buildingID(FK)
building => buildingID(PK), buildingName
やあ、@Nikola、私は新しい追加されたテーブルとのより良い理解のためのテーブル構造を更新した、uはそれを見て持つことができますか? –
私は自分の答えを更新しました。 –
それは素晴らしい、ありがとうたくさん働いた:) –