これにタイトルを付ける方法がよくわかりませんが、できる限りのことをしました。選択した場所のすべてのアセットを表示するレポートがあります。私たちの問題の 1 つは、すべてを資産として追跡していることです。したがって、典型的なコンピュータ システムには、5 台のコンピュータと 8 台のモニタがありますが、ネットワーク ケーブルは 10 本以上あります。不要なアイテムを「ロールアップ」して、実際のアイテムの代わりにカウントを表示するレポートを作成しようとしています。
たとえば、私はこれが欲しい:
Desc | Manufacturer | Serial Number
-----+------- ----+--------------------
20" monitor | Dell | 123456
25" monitor | Dell | 123456ab
6ft Net. Cable | N/A | NA123
6ft Net. Cable | N/A | NA124
6ft Net. Cable | N/A | NA125
6ft Net. Cable | N/A | NA456
1TB SATA HD | SeaGate | SG125000
1.5TB SATA HD | SeaGate | SG100000
することが:
Desc | Manufacturer | Serial Number/Qnty
-----+------- ----+-----------------------------
20" monitor | Dell | 123456
25" monitor | Dell | 123456ab
6ft Net. Cable | N/A | 4
1TB SATA HD | SeaGate | SG125000
1.5TB SATA HD | SeaGate | SG100000
上位の部分を取得する SQL は次のとおりですが、下位の結果を取得するためにどこから始めればよいかわかりません。
SELECT i.ItemDescription AS Desc, s.Name AS Manufacturer, inv.SerialNumber AS [Serial Number]
FROM Assets a
LEFT OUTER JOIN Inventory inv ON a.InventoryID = inv.InventoryID
LEFT OUTER JOIN Items i ON inv.ItemID = i.ItemID
LEFT OUTER JOIN Rooms r ON a.RoomID = r.RoomID
LEFT OUTER JOIN Locations l ON r.LocationID = l.LocationID
LEFT OUTER JOIN Suppliers s ON i.ManufacturerID = s.SupplierID
WHERE l.LocationID = 5
「グループ化された」行を基準に基づいて作成する必要があるため、次のような WHERE 句に含める
WHERE l.LocationID = 5 AND inv.SerialNumber LIKE 'NA%'
必要があります。 「NA%」などの通し番号のもの
どんな助けでも大歓迎です!