Vraag : Win het recentste verslag van de Binnenentiteit van terug aan vele verhouding

Hallo hebben de deskundigen,

I één of andere hulp met SQL problem.
I hebben nodig een gegevensbestand dat informatie over „activa“ houdt en hun „bewegingen“ rond country.
I am die mijn activainformatie en enkel meest latest Movement- verslag voor die Activa record.

My de volledige activainformatie uit de volgende lijsten:

Asset- Lijst:
AssetId
MachineId
Active
WarrantyExpiry
SerialNo

Machine- Lijst:
MachineId
MachineTypeId
MachineModelId
Active

MachineType- Lijst:
MachineTypeId
Description

MachineModel- Lijst:
MachineModelId
Description

I gebruikt de volgende verklaring om al „activa“ informatie van die lijsten terug te winnen:

SELECT
Asset.AssetId,
Asset.SerialNo,
MachineType.MachineTypeId,
MachineType.Description AANGEZIEN TypeDesc,
MachineModel.MachineModelId,
MachineModel.Description ALS Activa/>FROM
INNER zich van ModelDesc
INNER zich AANSLUIT bij MachineModel OP Machine.MachineModelId = MachineModel.MachineModelId
INNER zich AANSLUIT bij MachineType OP Machine.MachineTypeId = MachineType.MachineTypeId
WHERE Asset.Active = 1 "

The- verklaring hierboven AANSLUIT veroorzaakt output met de volgende kolommen:
AssetId SerialNo MachineTypeId TypeDesc MachineModelId ModelDesc



This is de „bewegings“ tabel 1 zou willen aan de statement.

Movement- Lijst toevoegen:
MovementId
MovementTypeId
FaultTypeId
AssetId
StoreId
RepairHours
RepairCost
MovementDate
Notes

As u kunt zien er een buitenlandse sleutel op de lijst van de Beweging voor Opslag (via Storeid) zo I ook moet de relevante informatie van de opslagtable.

Store- Lijst krijgen is:
StoreId
Active
StoreNo
StoreName
ModifyDate


So de definitieve output zal zijn:

AssetId SerialNo MachineTypeId TypeDesc MachineModelId ModelDesc MovementDate StoreName

Just om ding te maken compliceerde lichtjes meer - als er no beweging I nog behoefte is te tonen Asset.

If u om het even welke verdere informatie vereisen of de verduidelijking gelieve: te vragen)

Thanks vooraf

Antwoord : Win het recentste verslag van de Binnenentiteit van terug aan vele verhouding


SELECTEER
Asset.AssetId,
Asset.SerialNo,
MachineType.MachineTypeId,
MachineType.Description ALS TypeDesc,
MachineModel.MachineModelId,
MachineModel.Description ALS ModelDesc,
x.MovementDate, x.StoreName
VAN Activa
BINNEN SLUIT me aan bij Machine OP Asset.MachineId = Machine.MachineId
BINNEN SLUIT me aan bij MachineModel OP Machine.MachineModelId = MachineModel.MachineModelId
BINNEN SLUIT me aan bij MachineType OP Machine.MachineTypeId = MachineType.MachineTypeId
HET KRUIS IS VAN TOEPASSING
(
SELECTEER MAXIMUM MovementDate (van MovementDate), MAXIMUM StoreName (van StoreName)
VAN Opslag s
SLUIT me aan bij Beweging m OP s.StoreID = m.StoreID
WAAR Asset.AssetID = m.AssetID
) x
WAAR Asset.Active = 1
Andere oplossingen  
 
programming4us programming4us