"-- Write your query here
select
u.userid as userid,
IFNULL(sum(purchase_value), 0) AS LTV
FROM
user_sessions u
JOIN attribution a
ON u.sessionid = a.sessionid
group by
user_id
order by
LTV desc
;
Needs a full join. Wondering why cant we do a left outer join here. All the sessions should have complete data."
Aneesha K. - "-- Write your query here
select
u.userid as userid,
IFNULL(sum(purchase_value), 0) AS LTV
FROM
user_sessions u
JOIN attribution a
ON u.sessionid = a.sessionid
group by
user_id
order by
LTV desc
;
Needs a full join. Wondering why cant we do a left outer join here. All the sessions should have complete data."See full answer
"SQL databases are relational, NoSQL databases are non-relational. SQL databases use structured query language and have a predefined schema. NoSQL databases have dynamic schemas for unstructured data. SQL databases are vertically scalable, while NoSQL databases are horizontally scalable."
Ali H. - "SQL databases are relational, NoSQL databases are non-relational. SQL databases use structured query language and have a predefined schema. NoSQL databases have dynamic schemas for unstructured data. SQL databases are vertically scalable, while NoSQL databases are horizontally scalable."See full answer
"Clarification questions
What is the purpose of connecting the DB?
Do we expect high-volumes of traffic to hit the DB
Do we have scalability or reliability concerns?
Format
Code -> DB
Code -> Cache -> DB
API -> Cache -> DB - APIs are built for a purpose and have a specified protocol (GET, POST, DELETE) to speak to the DB. APIs can also use a contract to retrieve information from a DB much faster than code.
Load balanced APIs -> Cache -> DB
**Aut"
Aaron W. - "Clarification questions
What is the purpose of connecting the DB?
Do we expect high-volumes of traffic to hit the DB
Do we have scalability or reliability concerns?
Format
Code -> DB
Code -> Cache -> DB
API -> Cache -> DB - APIs are built for a purpose and have a specified protocol (GET, POST, DELETE) to speak to the DB. APIs can also use a contract to retrieve information from a DB much faster than code.
Load balanced APIs -> Cache -> DB
**Aut"See full answer
"SELECT upsellcampaignid, COUNT(DISTINCT trans.userid) AS eligibleusers
FROM campaign
JOIN "transaction" AS trans
ON transactiondate BETWEEN datestart AND date_end
JOIN user
ON trans.userid = user.userid
WHERE iseligibleforupsellcampaign = 1
GROUP BY upsellcampaignid
`"
Alina G. - "SELECT upsellcampaignid, COUNT(DISTINCT trans.userid) AS eligibleusers
FROM campaign
JOIN "transaction" AS trans
ON transactiondate BETWEEN datestart AND date_end
JOIN user
ON trans.userid = user.userid
WHERE iseligibleforupsellcampaign = 1
GROUP BY upsellcampaignid
`"See full answer
"WITH cte AS (
SELECT customer_id,
COUNT(*) AS noofoffences
FROM transactions
WHERE receipt_number like '%999%'
OR receipt_number like '%1234%'
OR receipt_number like '%XYZ%'
GROUP BY 1
HAVING COUNT(*) >=2
)
SELECT firstname, lastname,
receipt_number,
noofoffences
FROM cte
INNER JOIN customers
using(customer_id)
INNER JOIN transactions
using(customer_id)
ORDER BY 1,2,3,4
`"
Michelle M. - "WITH cte AS (
SELECT customer_id,
COUNT(*) AS noofoffences
FROM transactions
WHERE receipt_number like '%999%'
OR receipt_number like '%1234%'
OR receipt_number like '%XYZ%'
GROUP BY 1
HAVING COUNT(*) >=2
)
SELECT firstname, lastname,
receipt_number,
noofoffences
FROM cte
INNER JOIN customers
using(customer_id)
INNER JOIN transactions
using(customer_id)
ORDER BY 1,2,3,4
`"See full answer
Data Analyst
SQL
+3 more
🧠Want an expert answer to a question? Saving questions lets us know what content to make next.