Showing posts with label sum. Show all posts
Showing posts with label sum. Show all posts

Monday, March 26, 2012

IS it possible to insert a blank line in my report

Hello,

I my dataset is like following

sql:

select quarter, sum(amount) as amount from table1 group by quarter

then I get the dataset

field: quarter,amount

date: quarter1,100

quarter2,500

Is it possible to get my report from the dataset above.

my report:

quarter,amount

quarter1,100

quarter2,500

quarter3,0

quarter4,0

thanks!

This is possible if you have a time (or quarter) table in your database:

SELECT

q.quarter,

ISNULL(t1.amount,0) as amount

FROM quarters q

LEFT JOIN table1 t1

ON q.quarter = t1.quarter

|||

thank you for reply

I can't get the tabe quarters ...

|||

Use this SQL:

SELECT

q.quarter,

ISNULL(t1.amount,0) as amount

FROM quarters q LEFT JOIN

(SELECT 'quarter1' AS quarter UNION SELECT 'quarter2' AS quarter UNION SELECT 'quarter3' AS quarter UNION SELECT 'quarter4' AS quarter) AS qrt

ON quarters.quarter = qrt.quarter

This will work.

Please mark the post as answer.

Shyam

|||


In order to more easily manage date groupings (weeks, months, quarters, years, etc.) it is a VERY good idea to have a Calendar table in your database. Having a Calendar table makes tasks such as this one very simple.


Here is additional information about creating and using a Calendar table.

Datetime -Calendar Table
http://www.aspfaq.com/show.asp?id=2519

Monday, March 19, 2012

Is it possible to append and sum together?

Hi there,

I was wondering if this is possible:

I need to update 'customers sales' in a database - can this be done so that when I enter the customers new sale to the database (via update page) it will add it to their current sales, giving them a new sales total.??

Angie.Originally posted by blondini3
Hi there,

I was wondering if this is possible:

I need to update 'customers sales' in a database - can this be done so that when I enter the customers new sale to the database (via update page) it will add it to their current sales, giving them a new sales total.??

Angie.
You could do that, using a database trigger. The syntax of a database trigger varies by DBMS.

However, I wouldn't do that. Don't store the sales total at all. When you want to see a sales total, just SUM up the individual sales. You could have a view that does this for you, if you like:

CREATE VIEW customer_total AS
SELECT cust.cust_id, SUM(sales.value) tot_value
FROM cust, sales
WHERE cust.cust_id = sales.cust_id
GROUP BY cust.cust_id;

You are probably concerned that calculating the total sales "on demand" like this is bad for performance. But really, it is what databases are good at. Only very exceptionally is it necessary to store summed values - only in very big, high-access databases. And the downside of doing so is data integrity - i.e. you have to do a lot of work to ensure that the stored total is accurate (e.g. if a sale is deleted, updated).|||This works, thanks...BUT......when I go to addanother column from the Merlot table either before or after the SUM column, i get a ERROR MESSAGE saying 'column' not part of aggregate function !!!

Can you only select two columns ? I want it to display the CardRecordID, LastName, FirstName from Merlot Table, and total sales from Sales Table...but i can't get it to work...

SELECT Merlot.CardRecordID, SUM(sales.sales_value)
FROM Merlot, sales
WHERE Merlot.CardRecordID = sales.CardRecordID
GROUP BY Merlot.CardRecordID

thanks...|||It should be straight forward only..

select Merlot.CardID, Merlot.firstname,Merlot.lastname, sum(sales.values)
from Merlot,sales
where.....etc etc

thats what i always do and works..mebbe its some syntax error like a comma or something..check it up..
also sometiems the "group by" attribute causes problems so first jus see your output without grouping and then try again...

And im a beginner at this too so dun count on my words..jus tryin to extend some help:)

-s|||Thanks for your reply....yeah, it should be straight forward allright, but it comes up STILL with an aggregate function error ?!!!!

when i run this:

SELECT Merlot.CardRecordID, Merlot.FirstName, Merlot.LastName, sum(Sales.Sales_Value)
FROM Merlot,Sales
WHERE Merlot.CardRecordID = Sales.CardRecordID

I get an error message saying 'cardrecordID' not part of an aggregate function.

BUT......ALTHOUGH THIS ONE BELOW WORKS...it doesn't total up the sales for each recordID - it displays each cardID's sales individually...

SELECT Merlot.CardRecordID, Merlot.FirstName, Merlot.LastName, Sales.Sales_Value
FROM Merlot,Sales
WHERE Merlot.CardRecordID = Sales.CardRecordID

it won't let me add any more than two fields in the SELECT statment or it gives me the aggregate error....because when I run this one below it totals the sales fine

SELECT merlot.cardrecordid, sum(sales.sales_value)
FROM merlot, sales
WHERE merlot.cardrecordID = sales.cardrecordid

how do I get it to total the sales for each cardID AND ALSO show more than two fields ??

I'm using dreamweaver MX to create the queries.

angie...|||SELECT Merlot.CardRecordID, Merlot.FirstName, Merlot.LastName, sum(Sales.Sales_Value)
FROM Merlot,Sales
WHERE Merlot.CardRecordID = Sales.CardRecordID
group by Merlot.CardRecordID, Merlot.FirstName, Merlot.LastName

Hope this will help u.|||THANK YOU THANK YOU THANK YOU KUMAR AP,,,,,,you are the best..........the best...............did i mention you're the greatest???.............i will always, always, remember to put the other fields in the GROUP BY statement from now on...

thankyou

Angie.|||Hi,
Whether your problem solved ?.. or else yet to be?.|||yep...it's all working now...thanks heaps.
Angie.