# SQL - Window Functions (Data Analytics) > ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, NTILE, SUM OVER, PARTITION BY, frames - 20 คำถามสัมภาษณ์ - Mid-Level - [คำถามสัมภาษณ์: Data Analytics](https://sharpskill.dev/th/technologies/data-analytics/interview-questions.md) ## 1. Window function ใน SQL คืออะไร? **คำตอบ** Window function ทำการคำนวณข้ามชุดของแถวที่เกี่ยวข้องกับแถวปัจจุบัน โดยไม่ยุบผลลัพธ์ให้เป็นแถวเอาต์พุตเดียว ซึ่งแตกต่างจาก GROUP BY ที่ลดจำนวนแถว window function จะรักษาแถวทั้งหมดในผลลัพธ์ไว้พร้อมกับเพิ่มคอลัมน์ที่คำนวณ คำสั่ง OVER() กำหนดหน้าต่างที่ทำการคำนวณ ## 2. คำสั่งใดที่จำเป็นสำหรับการกำหนด window function? **คำตอบ** คำสั่ง OVER() จำเป็นสำหรับ window function ใดๆ มันบอกให้กลไก SQL รู้ว่าฟังก์ชันควรถูกดำเนินการเป็น window function แทนที่จะเป็นฟังก์ชันการรวมปกติ OVER() สามารถมี PARTITION BY, ORDER BY และข้อกำหนด frame แต่ก็สามารถปล่อยว่างไว้เพื่อใช้การคำนวณกับชุดผลลัพธ์ทั้งหมด ## 3. บทบาทของ PARTITION BY ใน window function คืออะไร? **คำตอบ** PARTITION BY แบ่งชุดแถวเป็นกลุ่ม (พาร์ติชัน) อิสระ และ window function จะถูกนำไปใช้แยกกันกับแต่ละพาร์ติชัน ซึ่งแตกต่างจาก GROUP BY PARTITION BY ไม่ลดจำนวนแถวในผลลัพธ์ ตัวอย่างเช่น SUM(sales) OVER(PARTITION BY region) คำนวณยอดขายรวมต่อภูมิภาคในขณะที่รักษาแต่ละแถวไว้ ## มีอีก 17 คำถาม - ความแตกต่างหลักระหว่าง GROUP BY และ PARTITION BY คืออะไร? - ROW_NUMBER() OVER(ORDER BY salary DESC) ส่งคืนอะไร? สมัครฟรี: https://sharpskill.dev/th/login ## หัวข้อสัมภาษณ์ Data Analytics อื่นๆ - [Google Sheets - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/google-sheets-basics.md): 20 คำถาม, Junior - [Google Sheets - สูตรขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/google-sheets-advanced.md): 20 คำถาม, Junior - [SQL - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-basics.md): 25 คำถาม, Junior - [SQL - การรวมและการจัดกลุ่ม](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-aggregations.md): 20 คำถาม, Junior - [SQL - Joins](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-joins.md): 20 คำถาม, Junior - [BigQuery - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/bigquery-fundamentals.md): 20 คำถาม, Junior - [Data Cleaning - การทำความสะอาดข้อมูล](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/data-cleaning.md): 20 คำถาม, Junior - [KPI และเมตริกทางธุรกิจ](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/kpis-metrics.md): 20 คำถาม, Junior - [สถิติเชิงพรรณนา](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/descriptive-statistics.md): 20 คำถาม, Junior - [Zapier และระบบอัตโนมัติ No-Code](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/zapier-automation.md): 20 คำถาม, Junior - [หลักการ Data Visualization](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/data-viz-principles.md): 20 คำถาม, Junior - [Python & Pandas - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/python-pandas-basics.md): 20 คำถาม, Junior - [Google Sheets - แดชบอร์ดอัตโนมัติ](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/google-sheets-dashboards.md): 20 คำถาม, Mid-Level - [SQL - Subquery และ CTE](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-subqueries-ctes.md): 20 คำถาม, Mid-Level - [BigQuery - ฟีเจอร์ขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/bigquery-advanced.md): 20 คำถาม, Mid-Level - [Data Modeling](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/data-modeling.md): 20 คำถาม, Mid-Level - [การวิเคราะห์ Funnel และ Conversion](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/funnel-analysis.md): 20 คำถาม, Mid-Level - [การวิเคราะห์ Cohort และ Retention](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/cohort-retention.md): 20 คำถาม, Mid-Level - [Google Tag Manager และการติดตาม](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/gtm-tracking.md): 20 คำถาม, Mid-Level - [API และ Webhook](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/apis-webhooks.md): 20 คำถาม, Mid-Level - [dbt - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/dbt-fundamentals.md): 20 คำถาม, Mid-Level - [AB Testing และสถิติประยุกต์](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/ab-testing.md): 20 คำถาม, Mid-Level - [Looker Studio (Google Data Studio)](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/looker-studio.md): 20 คำถาม, Mid-Level - [Power BI - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/power-bi-fundamentals.md): 20 คำถาม, Mid-Level - [SQL - การคิวรีเชิงวิเคราะห์ขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-advanced-analytics.md): 20 คำถาม, Senior - [dbt - ฟีเจอร์ขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/dbt-advanced.md): 20 คำถาม, Senior - [Power BI - DAX และแดชบอร์ดขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/power-bi-dax.md): 20 คำถาม, Senior - [Python Analytics - การวิเคราะห์ขั้นสูงและ ML](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/python-analytics-advanced.md): 20 คำถาม, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-window-functions