Fix remarks
This commit is contained in:
@@ -13,7 +13,7 @@ ORDER BY days_since_registration DESC;
|
|||||||
-- 2 Задача
|
-- 2 Задача
|
||||||
SELECT name,
|
SELECT name,
|
||||||
LOWER(email) AS email_clean,
|
LOWER(email) AS email_clean,
|
||||||
SUBSTRING(email FROM POSITION('@' IN email) + 1) AS domain
|
SUBSTRING(LOWER(email) FROM POSITION('@' IN LOWER(email)) + 1) AS domain
|
||||||
FROM users
|
FROM users
|
||||||
WHERE email IS NOT NULL
|
WHERE email IS NOT NULL
|
||||||
ORDER BY domain, name;
|
ORDER BY domain, name;
|
||||||
@@ -30,6 +30,7 @@ SELECT name,
|
|||||||
WHEN age < 25 THEN 'young'
|
WHEN age < 25 THEN 'young'
|
||||||
WHEN age BETWEEN 25 AND 35 THEN 'adult'
|
WHEN age BETWEEN 25 AND 35 THEN 'adult'
|
||||||
WHEN age > 35 THEN 'senior'
|
WHEN age > 35 THEN 'senior'
|
||||||
|
ELSE 'unknown'
|
||||||
END AS age_group
|
END AS age_group
|
||||||
FROM users
|
FROM users
|
||||||
ORDER BY age;
|
ORDER BY age;
|
||||||
@@ -70,17 +71,17 @@ FROM users;
|
|||||||
SELECT name,
|
SELECT name,
|
||||||
CURRENT_DATE - created_at::date AS days_since_registration,
|
CURRENT_DATE - created_at::date AS days_since_registration,
|
||||||
CASE
|
CASE
|
||||||
WHEN created_at >= CURRENT_DATE - INTERVAL '30 days' THEN 'new'
|
WHEN created_at::date >= CURRENT_DATE - INTERVAL '30 days' THEN 'new'
|
||||||
WHEN created_at < CURRENT_DATE - INTERVAL '30 days'
|
WHEN created_at::date < CURRENT_DATE - INTERVAL '30 days'
|
||||||
AND created_at > CURRENT_DATE - INTERVAL '180 days' THEN 'middle'
|
AND created_at::date > CURRENT_DATE - INTERVAL '180 days' THEN 'middle'
|
||||||
WHEN created_at < CURRENT_DATE - INTERVAL '180 days' THEN 'old'
|
ELSE 'old'
|
||||||
END AS tenure_group,
|
END AS tenure_group,
|
||||||
is_active
|
is_active
|
||||||
FROM users
|
FROM users
|
||||||
ORDER BY created_at >= CURRENT_DATE - INTERVAL '30 days',
|
ORDER BY created_at::date >= CURRENT_DATE - INTERVAL '30 days',
|
||||||
created_at < CURRENT_DATE - INTERVAL '30 days'
|
created_at::date < CURRENT_DATE - INTERVAL '30 days'
|
||||||
AND created_at > CURRENT_DATE - INTERVAL '180 days',
|
AND created_at::date > CURRENT_DATE - INTERVAL '180 days',
|
||||||
created_at < CURRENT_DATE - INTERVAL '180 days',
|
created_at::date < CURRENT_DATE - INTERVAL '180 days',
|
||||||
days_since_registration;
|
days_since_registration;
|
||||||
-- Ответ на вопросы
|
-- Ответ на вопросы
|
||||||
-- 1. В сегментации по возрасту показывает возраст пользователя,
|
-- 1. В сегментации по возрасту показывает возраст пользователя,
|
||||||
|
|||||||
Reference in New Issue
Block a user