Result sets allow a procedure to return more than one row of results to the calling environment.
The following procedure returns a list of customers who have placed orders, together with the total value of the orders placed. The procedure does not list customers who have not placed orders.
CREATE PROCEDURE ListCustomerValue()
RESULT ("Company" CHAR(36), "Value" INT)
BEGIN
SELECT CompanyName,
CAST( sum( SalesOrderItems.Quantity *
Products.UnitPrice)
AS INTEGER ) AS value
FROM Customers
INNER JOIN SalesOrders
INNER JOIN SalesOrderItems
INNER JOIN Products
GROUP BY CompanyName
ORDER BY value DESC;
END; |
Run the following statement:
CALL ListCustomerValue ( ); |
| Company | Value |
|---|---|
| The Hat Company | 5016 |
| The Igloo | 3564 |
| The Ultimate | 3348 |
| North Land Trading | 3144 |
| Molly's | 2808 |
| ... | ... |
Notes![]() |
Discuss this page in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |