mainrotor
asked on
I need help with a SQL Query
Hi experts,
I have a table that has two fields, ItemCategory - varchar(50) ,and ItemCost - float. I need to write T-SQL to:
1. Calculate the Product of all ItemCost values by ItemCategory.
2. Calculate the Median value of ItemCost by ItemCategory.
How can I do this?
Thanks in advance,
mrotor
I have a table that has two fields, ItemCategory - varchar(50) ,and ItemCost - float. I need to write T-SQL to:
1. Calculate the Product of all ItemCost values by ItemCategory.
2. Calculate the Median value of ItemCost by ItemCategory.
How can I do this?
Thanks in advance,
mrotor
ASKER
angellll,
the The product is the result of multiplying numbers together. For example, the Product of 2 x 2 = 4.
mrotor
the The product is the result of multiplying numbers together. For example, the Product of 2 x 2 = 4.
mrotor
you mean this.
select ItemCategory,ItemCost,ItemCategory *ItemCost Product
from yourtable
ASKER
Sharath,
It should be itemcost * itemcost
For example, if I have 3 records with the following values:
3
8
2
The answer should be 48
3 * 8 = 24
24 * 2 = 48
How can I do this?
It should be itemcost * itemcost
For example, if I have 3 records with the following values:
3
8
2
The answer should be 48
3 * 8 = 24
24 * 2 = 48
How can I do this?
Why do you want that value? If you have more items and item cost is in hundreds or thousands, you will get a big number.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Replace 2 places of #m with your table name
You can also do this by creating a function that accepts ItemCategory parameter
declare @product float
set @product=1
select @product = @product * itemCost from YOURTABLE where itemCategory=@itemCategory
return @product
You can figure out the median.
declare @product float
set @product=1
select @product = @product * itemCost from YOURTABLE where itemCategory=@itemCategory
return @product
You can figure out the median.
please change to decimal(20,4), for example, float is a unprecise data type.
can you please clarify "product of itemcost" ... I presume you mean sum() ?
select ItemCategory, sum(itemcost) from yourtable group by itemcategory
but not sure if that logically makes any sense...
median: means the middle value of all the values:
see here the technique how to do, in general:
http://www.1keydata.com/sql/sql-median.html