问答交流

【平台使用】时间序列 SQL 函数咨询

由bqgeewkn创建,最终由bqgeewkn 被浏览 3 用户

目标:希望通过 SQL 精准的获取到某一天的时间序列函数计算之后的值\n现状:只要在 SQL 中带入了 date 的精准条件,就会导致返回的时间序列计算为空值。只能在 SQL 中不进行过滤,然后在代码中过滤具体时间。\n%%sql

WITH market_cap_with_warmup AS (

SELECT

        date,

        instrument,

        total_market_cap,

        float_market_cap,

        -- m_min 会在每个 instrument 的时间序列上计算过去 N 个交易日的最小值

        m_min(total_market_cap, 20) AS min_market_cap_20d

    FROM cn_stock_prefactors

    WHERE date >= '2016-12-04'  -- 往前多取 warmup 天数

      AND date <= '2018-01-03'

      AND total_market_cap IS NOT NULL

      AND float_market_cap IS NOT NULL

      AND float_market_cap > 0

)

SELECT * FROM market_cap_with_warmup WHERE date = '2018-01-03' ORDER BY date DESC\n\n

{link}