365 Days of SQL: Day 150
I have decided to also officially start another challenge i.e for Tableau. I think I am good in Tableau however, since I started right off without basics, I want to work on them. I had started to read the Tableau documentation from their official site. I will be posting a daily blog about my reading that will highlight the key points from the reading.
Puzzle #35: International vs Domestic Sales

I tried the solution in the live oracle environment here.
WITH temp AS (
SELECT 1001 AS SalesId, 'Inv345756' AS InvoiceId, 13454 AS Amount, 'International' AS SalesType FROM DUAL UNION ALL
SELECT 2002 AS SalesId, 'Inv546744' AS InvoiceId, 3434 AS Amount, 'International' AS SalesType FROM DUAL UNION ALL
SELECT 4004 AS SalesId, 'Inv234745' AS InvoiceId, 54645 AS Amount, 'International' AS SalesType FROM DUAL UNION ALL
SELECT 5005 AS SalesId, 'Inv895745' AS InvoiceId, 234345 AS Amount, 'International' AS SalesType FROM DUAL UNION ALL
SELECT 7007 AS SalesId, 'Inv006321' AS InvoiceId, 776 AS Amount, 'International' AS SalesType FROM DUAL UNION ALL
SELECT 1001 AS SalesId, 'Inv734534' AS InvoiceId, 4564 AS Amount, 'Domestic' AS SalesType FROM DUAL UNION ALL
SELECT 2002 AS SalesId, 'Inv600213' AS InvoiceId, 34534 AS Amount, 'Domestic' AS SalesType FROM DUAL UNION ALL
SELECT 3003 AS SalesId, 'Inv757853' AS InvoiceId, 345 AS Amount, 'Domestic' AS SalesType FROM DUAL UNION ALL
SELECT 6006 AS SalesId, 'Inv198632' AS InvoiceId, 6543 AS Amount, 'Domestic' AS SalesType FROM DUAL UNION ALL
SELECT 8008 AS SalesId, 'Inv977654' AS InvoiceId, 67 AS Amount, 'Domestic' AS SalesType FROM DUAL
)
SELECT * FROM temp
WHERE SalesId NOT IN (
Select SalesId from temp
WHERE SalesType = 'International' AND SalesId IN (SELECT SalesId FROM temp
WHERE SalesType = 'Domestic'))

Leave a comment