troubleshooting Question

SQL, How to do aggregation on extracting field and range band field?

Avatar of tanj1035
tanj1035 asked on
Microsoft SQL Server
2 Comments1 Solution85 ViewsLast Modified:
hi Experts,

1) I want to extract numeric , then do aggregation on [promo code]. I.E. I want to extract numeric from [promo code] = BWL0416A or BWL0416 to 0416, then do the aggregation of [quantity'], [number of applications] based on 0416.

2) I want to add a range band on [response score], then do the aggregation of [quantity'], [number of applications] based on the range band.

The query will be similar like

select 
     newpromocode, 
     CBD,
     CASE WHEN RESPONSESCORE BETWEEN 0 AND 500 THEN '0-500'  
          WHEN RESPONSESCORE BETWEEN 500 AND 1000  THEN '500-1000' END AS RESPONSESCORE,
     SUM(CASE WHEN RESPONSESCORE BETWEEN 0 AND 500 THEN QUANTITY END ) AS QUANTITY,
     SUM(CASE WHEN RESPONSESCORE BETWEEN 500 AND 1000 THEN QUANTITY END ) AS QUANTITY,
     SUM(CASE WHEN RESPONSESCORE BETWEEN 0 AND 500 THEN numberofapplications END ) AS numberofapplications,
     SUM(CASE WHEN RESPONSESCORE BETWEEN 500 AND 1000 THEN numberofapplications END ) AS numberofapplications
FROM  
    (
      SELECT
      extractnumeric AS newpromocode,
      CBD,
     responsescore,
     sum(case when EXTRACT NUMERIC (PROMOCODE) THEN NUMERIC THEN QUANTITY END )AS QUANTITY,
     sum(case when EXTRACT NUMERIC (PROMOCODE) THEN NUMERIC THEN numberofapplications END )AS numberofapplications
     from applications
     ) A

For "EXTRACT NUMERIC (PROMOCODE) ......" I do not know what the extract query is suitable for this case, so just made it up. Sorry for the complication.

Please find the attachment for the original data and result table.

Thank you,
Capture.PNG
ASKER CERTIFIED SOLUTION
Join our community to see this answer!
Unlock 1 Answer and 2 Comments.
Start Free Trial
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 2 Comments.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros