
SQL ขั้นสูงสำหรับ Data Engineering
Window functions, CTE แบบ recursive, การสืบค้นเชิงวิเคราะห์, การปรับแต่งประสิทธิภาพ, EXPLAIN ANALYZE, การทำดัชนี, การแบ่งพาร์ติชัน
1Window function ใดที่กำหนดหมายเลขลำดับที่ไม่ซ้ำให้กับแต่ละแถวภายในพาร์ติชัน?
Window function ใดที่กำหนดหมายเลขลำดับที่ไม่ซ้ำให้กับแต่ละแถวภายในพาร์ติชัน?
คำตอบ
ROW_NUMBER() กำหนดหมายเลขลำดับที่ไม่ซ้ำให้กับแต่ละแถวภายในพาร์ติชัน โดยเริ่มจาก 1 ต่างจาก RANK() และ DENSE_RANK() ที่สามารถกำหนดหมายเลขเดียวกันให้กับค่าที่เท่ากัน ROW_NUMBER() รับประกันหมายเลขที่ไม่ซ้ำเสมอ แม้กระทั่งสำหรับค่าที่เหมือนกันในคำสั่ง ORDER BY
2ความแตกต่างหลักระหว่าง RANK() และ DENSE_RANK() คืออะไร?
ความแตกต่างหลักระหว่าง RANK() และ DENSE_RANK() คืออะไร?
คำตอบ
RANK() เว้นช่องว่างในการนับหมายเลขหลังจากค่าที่เสมอกัน ตัวอย่างเช่น หากสองแถวได้อันดับ 1 แถวถัดไปจะได้อันดับ 3 DENSE_RANK() ไม่เว้นช่องว่าง: หลังจากสองแถวที่ได้อันดับ 1 แถวถัดไปจะได้อันดับ 2 ความแตกต่างนี้สำคัญสำหรับการวิเคราะห์การจัดอันดับที่ช่องว่างอาจทำให้สถิติผิดเพี้ยน
3วิธีคำนวณยอดรวมสะสม (running total) ด้วย window function อย่างไร?
วิธีคำนวณยอดรวมสะสม (running total) ด้วย window function อย่างไร?
คำตอบ
SUM() OVER ที่มี ORDER BY และไม่มี frame ที่ชัดเจนจะใช้ ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW เป็นค่าเริ่มต้น ซึ่งคำนวณผลรวมของแถวก่อนหน้าทั้งหมดจนถึงและรวมแถวปัจจุบัน นี่เป็นพฤติกรรมมาตรฐานสำหรับการสร้างยอดรวมสะสมในการวิเคราะห์อนุกรมเวลาหรือตามลำดับ
บทบาทของคำสั่ง PARTITION BY ใน window function คืออะไร?
ฟังก์ชันใดที่อนุญาตให้เข้าถึงค่าของแถวก่อนหน้าใน window function?
+17 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Data Engineering อื่นๆ
Linux & Shell - พื้นฐาน
Git & GitHub - พื้นฐาน
Python ขั้นสูงสำหรับ Data Engineering
Docker - พื้นฐาน
Google Cloud Platform - พื้นฐาน
CI/CD และคุณภาพโค้ด
Docker Compose
FastAPI - Data API
Data Lake - สถาปัตยกรรมและการนำเข้าข้อมูล
BigQuery สำหรับ Data Engineering
PostgreSQL - การดูแลระบบ
Data Modeling สำหรับ Data Engineering
Fivetran & Airbyte - การนำเข้าข้อมูล
dbt - พื้นฐาน
Apache Airflow - พื้นฐาน
Kubernetes - พื้นฐาน
dbt - ฟีเจอร์ขั้นสูง
รูปแบบ ETL / ELT / ETLT
Apache Airflow - ขั้นสูง
Airflow + dbt - การจัดการ Pipeline
PySpark - การประมวลผลขนาดใหญ่
Google Pub/Sub - การสตรีมข้อมูล
Apache Beam & Dataflow
Kubernetes - Production และ Scaling
Terraform - Infrastructure as Code
ฐานข้อมูล NoSQL
Data Architecture สมัยใหม่
การมอนิเตอร์และการสังเกตการณ์
IAM และความปลอดภัยของข้อมูล
เชี่ยวชาญ Data Engineering สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี