SQL Fool Adventures in SQL Tuning – a blog for the rest of us

29Jul/098

Poor (Wo)Man’s Graph

Lary shared this poor (wo)man's graph with me today, and I thought it was pretty awesome:

SELECT OrderDate 
    , COUNT(*) AS 'orders'
    , REPLICATE('=', COUNT(*)) AS 'orderGraph'
    , SUM(TotalDue) AS 'revenue'
    , REPLICATE('$', SUM(TotalDue)/1000) AS 'revenueGraph'
FROM AdventureWorks.Sales.SalesOrderHeader
WHERE OrderDate Between '2003-07-15' And '2003-07-31'
GROUP BY OrderDate
ORDER BY OrderDate;

This will return a simple but effective "graph" for you:

orderDate  orders orderGraph                     revenue  revenueGraph
---------- ------ ------------------------------ -------- ----------------------------------------
2003-07-15 19     ===================            34025.24 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$      
2003-07-16 14     ==============                 26687.65 $$$$$$$$$$$$$$$$$$$$$$$$$$$             
2003-07-17 16     ================               32411.93 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$        
2003-07-18 9      =========                      18634.91 $$$$$$$$$$$$$$$$$$$                     
2003-07-19 13     =============                  19603.23 $$$$$$$$$$$$$$$$$$$$                    
2003-07-20 24     ========================       47522.80 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
2003-07-21 9      =========                      11781.62 $$$$$$$$$$$$                            
2003-07-22 17     =================              32322.50 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$        
2003-07-23 15     ===============                30906.44 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$         
2003-07-24 28     ============================   51107.90 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
2003-07-25 15     ===============                27058.10 $$$$$$$$$$$$$$$$$$$$$$$$$$$             
2003-07-26 18     ==================             41076.49 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
2003-07-27 15     ===============                22169.88 $$$$$$$$$$$$$$$$$$$$$$                  
2003-07-28 16     ================               23945.80 $$$$$$$$$$$$$$$$$$$$$$$$                
2003-07-29 25     =========================      51122.95 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
2003-07-30 12     ============                   23476.44 $$$$$$$$$$$$$$$$$$$$$$$                 
2003-07-31 18     ==================             36266.76 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Who needs Reporting Services when you've got REPLICATE? ;)

Tagged as: , Leave a comment
Comments (8) Trackbacks (3)
  1. Whoever wrote this must be a genius!!

  2. nice, keep up the good work!!!

  3. Great. Really I laughed. Nice Work!

  4. Ha ha ha this is awesome! I love it. Old school effectiveness without the new school bloat! Simply cool!

    Manuel

  5. You have induced flashbacks to COBOL, FORTRAN, and GECOS assmbler in this decrepit old codger’s mind.

    We used to do things like this because it was “the only way…” %)

  6. Wow, that’s ingenious! I love it.

  7. This tip is vastly underutilized. I believe I first learned of it in the late, great Ken Henderson Guru’s Guide. Thanks for sharing, Michelle!


Leave a comment