Why? Because it's Friday and I'm feeling silly :)
mysql> SELECT * FROM sales;
+--------------+-------+--------+
| company | state | sales |
+--------------+-------+--------+
| ABC | AZ | 140.01 |
| XYZ | AZ | 17.76 |
| ABC | NY | 123.45 |
| XYZ | NY | 123.00 |
| Widgets Inc. | NY | 45.09 |
| ABC | NY | 23.73 |
| Widgets Inc. | CA | 97.30 |
+--------------+-------+--------+
7 rows in set (0.00 sec)
mysql> SELECT 'each' AS 'By', company AS Company, state AS State, LPAD(
SUM(sales), 9, ' ' ) AS Sales,
-> LPAD( FORMAT( SUM(sales)*100/(SELECT SUM(sales) FROM sales),2), 9, ' '
) AS Percent,
-> REPEAT( '*', SUM(sales)*50/(SELECT SUM(sales) FROM sales) )
-> AS Graph
-> FROM sales
-> GROUP BY company, state
-> UNION
-> SELECT ' company', company, '', LPAD( SUM(sales), 9, ' ' ),
-> LPAD( FORMAT( SUM(sales)*100/(SELECT SUM(sales) FROM sales),2), 9, ' '
),
-> REPEAT( '*', SUM(sales)*50/(SELECT SUM(sales) FROM sales) )
-> FROM sales
-> GROUP BY company
-> UNION
-> SELECT ' state', '', state, LPAD( SUM(sales), 9, ' ' ),
-> LPAD( FORMAT( SUM(sales)*100/(SELECT SUM(sales) FROM sales),2), 9, ' '
),
-> REPEAT( '*', SUM(sales)*50/(SELECT SUM(sales) FROM sales) )
-> FROM sales
-> GROUP BY state
-> UNION
-> SELECT ' -----', '-----', '-----', REPEAT( '-', 9 ), REPEAT( '-', 9 ),
REPEAT( ' ', 50 )
-> UNION
-> SELECT '-----', '-----', '-----', REPEAT( '-', 9 ), REPEAT( '-', 9 ),
REPEAT( ' ', 50 )
-> ORDER BY 1,2
-> ;
+-----------+--------------+-------+-----------+-----------+----------------------------------------------------+
| By | Company | State | Sales | Percent | Graph
|
+-----------+--------------+-------+-----------+-----------+----------------------------------------------------+
| company | ABC | | 287.19 | 50.35 |
************************* |
| company | Widgets Inc. | | 142.39 | 24.97 | ************
|
| company | XYZ | | 140.76 | 24.68 | ************
|
| ----- | ----- | ----- | --------- | --------- |
|
| state | | AZ | 157.77 | 27.66 | **************
|
| state | | CA | 97.30 | 17.06 | *********
|
| state | | NY | 315.27 | 55.28 |
**************************** |
| ----- | ----- | ----- | --------- | --------- |
|
| each | ABC | AZ | 140.01 | 24.55 | ************
|
| each | ABC | NY | 147.18 | 25.81 | *************
|
| each | Widgets Inc. | CA | 97.30 | 17.06 | *********
|
| each | Widgets Inc. | NY | 45.09 | 7.91 | ****
|
| each | XYZ | AZ | 17.76 | 3.11 | **
|
| each | XYZ | NY | 123.00 | 21.57 | ***********
|
+-----------+--------------+-------+-----------+-----------+----------------------------------------------------+
14 rows in set, 2 warnings (0.01 sec)
mysql>
--
Just my 0.00000002 million dollars worth,
Shawn
"Where there's duct tape, there's hope."
"Perl is the duct tape of the Internet."
Hassan Schroeder, Sun's first webmaster
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]