Search
Write a publication
Pull to refresh
0
0
Михаил @Michael13

User

Send message
Та же фигня. Может от версии зависит…
Интересно, а почему этот код:

with september_sales as (
    select distinct sku, 
    sum(price) OVER (PARTITION BY sku) as revenue,
    count(1) OVER (PARTITION BY sku) as sales_count,
    sum(price) OVER (PARTITION by 0) as sales_total
    from invoice_items
    where date_part('month',created_at) = 9
)

select sku, 
    revenue::money, 
    sales_count, 
    sales_total::money,
    trunc((revenue/sales_total * 100),4) as percentage
from september_sales


Не написать вот так?

select sku, 
    revenue::money, 
    sales_count, 
    sales_total::money,
    trunc((revenue/sales_total * 100),4) as percentage
from (
    select distinct sku, 
    sum(price) OVER (PARTITION BY sku) as revenue,
    count(1) OVER (PARTITION BY sku) as sales_count,
    sum(price) OVER (PARTITION by 0) as sales_total
    from invoice_items
    where date_part('month',created_at) = 9
) t


Вроде проще и читается и пишется. Особенно если еще джоины и подселекты нужно добавить. Или база по другому будет обрабатывать?
Интересно, а мне одному уже начинают надоедать каждодневные «открытия» типа «на 3D принтере отпечатали первую ручку», «на 3D принтере отпечатали первую статуэтку», «отпечатали бутылку», крышку для унитаза, кусок лица, межпозвоночный диск, ухо и т.п.?
War Thunder как вариант еще…

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity