2017-08-30 9 views
1

Ceci est la requête SQL.Comment pouvons-nous définir une règle de validation sur les champs d'une requête SQL MS Access 2007

SELECT Assets.Asset_ID, 
     Assets.Name, 
     Assets.[Purchase Price], 
     Assets.Salvage, 
     Assets.[Life Span], 
     Assets.[Accumulated Depreciation], 
     (Assets.[Purchase Price]-Assets.Salvage)/Assets.[Life Span] AS Current_Depreciation, 
     Current_Depreciation+Assets.[Accumulated Depreciation] AS Total_Depreciation, 
     Assets.[Purchase Price]-Total_Depreciation AS Net_Value 
FROM Assets; 

Depuis l'amortissement total est dérivé (calculé) du prix d'achat, le sauvetage et la durée de vie, je ne veux pas dépasser le prix d'achat. c'est-à-dire la dépréciation totale < = Prix d'achat. Si tel est le cas, l'amortissement total doit être égal au prix d'achat. Comment faire cela dans la requête SQL elle-même dans MS ACCESS 2007 car VBA ne peut pas être utilisé pour faire cela sur une requête

Répondre

0

Vous pouvez utiliser "iif". Voir le guide here pour plus de détails. J'ai ajouté un bref exemple.

iif([Total Depreciation] < [Purchase Price], [Total Depreciation], [Purchase Price])