Сравните посетителя с самым высоким доходом из двух столбцов - PullRequest
0 голосов
/ 19 апреля 2019

У меня есть эта таблица с определенными столбцами.

**table_1**
device_uuid          
visited_store_1      
visited_store_2     
income             
parent  

Я предполагаю выяснить, в каком из магазинов самый высокий доход среди 10 человек. Я могу подумать о том, чтобы найти топ-10 по отдельности, но как мне присоединиться к нему в запросе, чтобы сравнить его и вернуть результат одного магазина?

Ответы [ 3 ]

0 голосов
/ 19 апреля 2019

создать таблицу #temp (visitor int) вставить в #temp выберите max (посетитель) в качестве посетителя из магазина1 союз выберите max (посетитель) в качестве посетителя из магазина2

выберите max (посетитель) из # temp

0 голосов
/ 19 апреля 2019

выберите случай, когда (max (a.visitor)> = max (b.visitor)) затем max (a.visitor), в противном случае max (b.visitor) заканчивается из shop1 a, shop2 b

0 голосов
/ 19 апреля 2019
with dat as (
select 
    'store1' name, 
    avg(income) avg_income, 
    sum(income) total_income
from table_1
where visited_store_1 = TRUE
order by income desc
limit 10

union all 

select 
    'store2' name, 
    avg(income) avg_income, 
    sum(income) total_income
from table_1
where visited_store_2 = TRUE
order by income desc
limit 10
)

select name
from dat
order by avg_income desc
limit 1

Я просто не знаю, какую метрику использовать для "Топ 10 людей с доходом"; Я использовал среднее значение для окончательного запроса, но подзапросы имеют оба.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...