AI & Data Dreamers練功房
寶箱片場規則
QUERY GATES・資料庫關卡・中階・3 題

SQL 中階・視窗函數:排名與最新一筆

這一頁是題幹試閱;登入/註冊後每題可以在瀏覽器裡執行、對答案,第一次交對 +10 XP。

  1. 01

    每股票最新收盤

    中等

    查詢每支股票最新一個交易日的收盤價,欄位依序 stock_id、date、close,依 stock_id 排序。請用 ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...) 搭配 CTE 完成。

    資料表 TaiwanStockPrice(與課程第 6 章的股價表同構):stock_id 股票代號(文字)、date 交易日(文字,'YYYY-MM-DD')、open、max、min、close(實數)、Trading_Volume 成交量(整數);複合主鍵 (stock_id, date)。資料含 2330 與 2317 兩檔、2026-01-05 至 2026-01-20 的交易日。

    平台以 sqlite 執行,支援 window function 與 CTE;MySQL 8.0 以上語法相同。

    作答登入後可作答
  2. 02

    第二高收盤價

    中等

    查詢每支股票「第二高」的收盤價,欄位依序 stock_id、close,依 stock_id 排序。請用 DENSE_RANK():若最高價出現在兩天,ROW_NUMBER() 會把第二天當成第二名,DENSE_RANK() 才會跳到真正的次高價。

    資料表 TaiwanStockPrice(與課程第 6 章的股價表同構):stock_id 股票代號(文字)、date 交易日(文字,'YYYY-MM-DD')、open、max、min、close(實數)、Trading_Volume 成交量(整數);複合主鍵 (stock_id, date)。資料含 2330 與 2317 兩檔、2026-01-05 至 2026-01-20 的交易日。

    平台以 sqlite 執行,支援 window function 與 CTE;MySQL 8.0 以上語法相同。

    作答登入後可作答
  3. 03

    成交量分三組

    中等

    把 2330 的 12 個交易日依成交量由大到小分成 3 組(NTILE(3)),計算每組的平均成交量,欄位依序 組別、平均成交量,依組別排序。這是 BigQuery 分析常用的分位分組手法。

    資料表 TaiwanStockPrice(與課程第 6 章的股價表同構):stock_id 股票代號(文字)、date 交易日(文字,'YYYY-MM-DD')、open、max、min、close(實數)、Trading_Volume 成交量(整數);複合主鍵 (stock_id, date)。資料含 2330 與 2317 兩檔、2026-01-05 至 2026-01-20 的交易日。

    平台以 sqlite 執行,支援 window function 與 CTE;MySQL 8.0 以上語法相同。

    作答登入後可作答