SELECT 省, 市, GDP FROM ( SELECT 省, 市, GDP, ROW_NUMBER() OVER (PARTITION BY 省 ORDER BY GDP DESC) AS rank FROM Table ) AS ranked WHERE rank <= 3;