Một số câu hỏi về 'difference between'
Một số câu hỏi về 'difference between' ( P1 )
1. What is the difference between row_number() and rank() in SQL ?
Khác nhau ở chỗ xử lý giá trị bằng nhau, đối với:
row_number(): thì sẽ đánh số tăng dần ( mặc định bắt đầu từ 1 ) đối với mỗi dòng
rank(): thì sẽ đánh số có giá trị bằng nhau ( ví dụ 2 dòng đều là rank 1 ) đối với 2 dòng có giá trị bằng nhau
2. What is the difference between IN and EXISTS and providing me example ?
Khác nhau ở chỗ khi filter các giá trị trong 1 list, đối với:
in(): thì đó là 1 list biết trước các giá trị
exists() thì đó là 1 list chưa biết trước giá trị ( ta sẽ chạy câu này để kiểm trả xem có match giá trị nằm trong vế subquery của exists hay ko )
3. What is the difference between true column store and row store ?
Khác nhau ở chỗ cách lưu trữ, đối với:
row store: dữ liệu được nhóm với nhau theo hàng
Row 1: [Value1, Value2, Value3]
Row 2: [Value4, Value5, Value6]
Row 3: [Value7, Value8, Value9]
column store: dữ liệu được nhóm với nhau theo cột
Column 1: [Value1, Value4, Value7]
Column 2: [Value2, Value5, Value8]
Column 3: [Value3, Value6, Value9]
Nhìn vào 2 cách lưu trữ như trên ta cũng có thể thấy, cách lưu trữ: row store sẽ phù hợp cho những hệ lữu trữ xử lý kiểu transactional như RDBMS, phục vụ tốt khi bạn cần thao tác trên toàn bộ dòng ( insert, update, delete )
column store sẽ phù hợp cho những hệ lữu trữ xử lý kiểu analytical như OLAP, phục vụ cho các tác vụ cần tính toán trên 1 cột nhất định
4. What is the difference between store procedure and function ?
5. What is the difference between UNION and UNION ALL ?
+ Loại bỏ kết quả duplicate, bảo đảm các record được trả về là duy nhất.
+ Tiến trình loại bỏ duplicate có thể ảnh hưởng đến performance, đặc biệt là khi có dataset lớn.
UNION ALL:
+ Kết hợp kết quả của 1 hoặc nhiều câu SELECT
+ Bao gồm tất cả các dòng, kể cả các những record duplicate ( nghĩa là nó ko bỏ đi các dòng duplicate )
+ Thường sẽ nhanh hơn UNION vì nó bỏ qua bước xác nhận và bỏ đi các record duplicate
Comments
Post a Comment