Mr jason said that we cannot put range values in fact table. I didn't had time to ask him why. can someone please explain to me. Thanks
There are three types of facts:
Additive: Additive facts are facts that can be summed up through all of the dimensions in the fact table.
Semi-Additive: Semi-additive facts are facts that can be summed up for some of the dimensions in the fact table, but not the others.
Non-Additive: Non-additive facts are facts that cannot be summed up for any of the dimensions present in the fact table.
The purpose of this table is to record the sales amount for each product in each store on a daily basis. Sales_Amount is the fact. In this case, Sales_Amount is an additive fact, because you can sum up this fact along any of the three dimensions present in the fact table -- date, store, and product. For example, the sum of Sales_Amount for all 7 days in a week represents the total sales amount for that week.
P.S: for what i know , fact table can only contain raw data :)
Hi Pearline, fact table is a table that provides the additive values that acts as independent variables by which dimensional attribute are analyzed.
It often defined by their GRAIN which represents the atomic level by which the facts may be defined.
For example : Sales volume by Day by Product by Store
Cannot put range value into your grain :))
Hope this helps :))
you cannot put the range value in the fact table because there is nothing for you to measure for the range value. for example , you can put income into the fact table as a measure, instead of using the income range as the measure in the fact table.
The fact table should consist of your IDs and measures. Range of values is not considered a measure as it is not an additive nor is it an semi-addictive fact, it is a value that you are able to pick out from the database and compute thus it should be placed in the dimension table
The purpose of the fact table is for you to put in IDS and measures. Measures meaning taking them out from the data base and doing some calculations to it. If the value can be taken out from the data base and does not need any computations it should be in the dimension table
The fact table should have all the measure you want to analyse and should have the lowest atomic level of the data stored. Therefore you should not group up the data into a range. If you want to use a range you should have it in one of your dimension tables.
Fact table is suppose to calculate and show the meaasures , not the range.
it may mean that your dimension table needs extending,