Bỏ qua hoạt động như thế nào trong MongoDB?

MongoDB là cơ sở dữ liệu NoSQL, nghĩa là không có bảng. Dữ liệu được lưu trữ ở định dạng JSON. Một bộ sưu tập duy nhất có thể bao gồm nhiều tài liệu. Có thể có hàng nghìn tài liệu trong một bộ sưu tập. Không phải lúc nào chúng ta cũng cần xem qua mọi tài liệu. Chúng ta có thể bỏ qua các tài liệu bằng phương pháp bỏ qua. Trong bài viết này, chúng ta sẽ tìm hiểu về phương thức bỏ qua và hiệu suất của nó

Nhảy()

Phương thức bỏ qua trong MongoDB được sử dụng để bỏ qua các tài liệu trong khi tìm nạp. Đó là một phương pháp hữu ích. Giả sử có rất nhiều tài liệu trong một bộ sưu tập. Chúng tôi cần lấy tất cả các tài liệu ngoại trừ năm mươi đầu tiên. Làm thế nào chúng ta có thể làm điều đó? . Hãy thảo luận chi tiết về phương pháp bỏ qua

Ta sẽ thực hiện thao tác bỏ qua trên tập hợp chi tiết

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52

> db. thông tin chi tiết. tìm thấy(). đẹp()
{
"_Tôi". ObjectId("5d52ff3c2daf944acd3099fb"),
"Tên". "John",
"vị trí". "Newyork"
}
{
"_Tôi". ObjectId("5d52ff432daf944acd3099fc"),
"Tên". "Lisa",
"vị trí". "Newyork"
}
{
"_Tôi". ObjectId("5d52ff4e2daf944acd3099fd"),
"Tên". "màu hồng",
"vị trí". "Chicago"
}
{
"_Tôi". ObjectId("5d52ff5b2daf944acd3099fe"),
"Tên". "Đá",
"vị trí". "Detroit"
}
{
"_Tôi". ObjectId("5d52ff622daf944acd3099ff"),
"Tên". "Sâm",
"vị trí". "Texas"
}
{
"_Tôi". ObjectId("5d52ff6e2daf944acd309a00"),
"Tên". "Bốp",
"vị trí". "Texas"
}
{
"_Tôi". ObjectId("5d52ff802daf944acd309a01"),
"Tên". "Billy",
"vị trí". "Washington DC"
}
{
"_Tôi". ObjectId("5d52ff932daf944acd309a02"),
"Tên". "Sophie",
"vị trí". "Newyork"
}
{
"_Tôi". ObjectId("5d52ffa62daf944acd309a03"),
"Tên". "Sư Tử",
"vị trí". "Chicago"
}
{
"_Tôi". ObjectId("5d52ffbc2daf944acd309a04"),
"Tên". "soái ca",
"vị trí". "California"
}
>

Bộ sưu tập chi tiết có mười tài liệu. Mỗi tài liệu chứa tên của một nhân viên và vị trí. Chúng tôi đã sử dụng phương thức find để lấy tất cả các tài liệu. Tất nhiên, chúng tôi có thể sử dụng truy vấn và phép chiếu để lọc kết quả nhưng chúng tôi muốn bỏ qua năm tài liệu đầu tiên. Chúng tôi không cần năm tài liệu đầu tiên. Chúng ta có thể làm gì? . Hãy xem cách chúng ta có thể sử dụng phương pháp bỏ qua

db. thông tin chi tiết
  . tìm thấy()
  . bỏ qua(5)
  . đẹp();

Phương thức bỏ qua được viết ngay sau phương thức tìm. Giá trị được chuyển đến hàm bỏ qua xác định số lượng tài liệu chúng tôi muốn bỏ qua. Chúng tôi đã chuyển năm làm giá trị vì chúng tôi muốn bỏ qua năm tài liệu đầu tiên. Hãy xác minh kết quả của lệnh trên

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

{
"_Tôi". ObjectId("5d52ff6e2daf944acd309a00"),
"Tên". "Bốp",
"vị trí". "Texas"
}
{
"_Tôi". ObjectId("5d52ff802daf944acd309a01"),
"Tên". "Billy",
"vị trí". "Washington DC"
}
{
"_Tôi". ObjectId("5d52ff932daf944acd309a02"),
"Tên". "Sophie",
"vị trí". "Newyork"
}
{
"_Tôi". ObjectId("5d52ffa62daf944acd309a03"),
"Tên". "Sư Tử",
"vị trí". "Chicago"
}
{
"_Tôi". ObjectId("5d52ffbc2daf944acd309a04"),
"Tên". "soái ca",
"vị trí". "California"
}
>

Đầu ra chứa tất cả các tài liệu ngoại trừ năm tài liệu đầu tiên. Đây là cách phương thức bỏ qua hoạt động. Hãy nhớ rằng, chúng ta cần truyền một số nguyên dương cho hàm bỏ qua. Nếu không, đầu ra sẽ chứa tất cả các tài liệu của hiện tại trong bộ sưu tập. Giá trị âm sẽ dẫn đến lỗi

Bỏ qua hiệu suất

Phương pháp bỏ qua hữu ích theo nhiều cách khác nhau. Nhưng nó có vấn đề về hiệu suất khi có một số lượng lớn tài liệu trong một bộ sưu tập. Khi chúng tôi bỏ qua năm tài liệu đầu tiên, điều đó không có nghĩa là, phương pháp tìm trực tiếp đến tài liệu thứ sáu. Nó phải lặp lại tất cả các tài liệu để đạt đến điểm đã chỉ định và sau đó nó trả về các tài liệu. Điều này là bình thường trong một bộ sưu tập có mười tài liệu. Nhưng điều gì sẽ xảy ra khi có một nghìn tài liệu trong một bộ sưu tập và chúng tôi muốn bỏ qua năm trăm tài liệu đầu tiên? . Phương pháp bỏ qua sẽ trở nên rất chậm

Phương thức bỏ qua không sử dụng các chỉ mục. Nó phải lặp lại tất cả tài liệu trước khi đến tài liệu được chỉ định. Đây là lý do tại sao phương pháp bỏ qua không được khuyến nghị cho một bộ sưu tập chứa một số lượng lớn tài liệu. Mặc dù, nó hoạt động tốt với số lượng tài liệu nhỏ hơn

Phần kết luận

Phương pháp bỏ qua rất hữu ích khi làm việc trên một bộ sưu tập chứa một số lượng nhỏ tài liệu. Chúng tôi có thể trực tiếp chuyển đến tài liệu mong muốn. Nhưng trong trường hợp có hàng tấn tài liệu, hiệu suất của nó giảm xuống. Vì vậy, không nên sử dụng phương pháp bỏ qua khi có một lượng lớn tài liệu trong một bộ sưu tập

Tại sao chúng ta sử dụng hàm SKIP() với limit() và find() trong MongoDB?

MongoDB bỏ qua() và giới hạn() .
Sự miêu tả. Hàm limit() trong MongoDB được sử dụng để chỉ định số lượng kết quả tối đa được trả về. .
Lấy số lượng tài liệu hạn chế từ bộ sưu tập. .
Lấy số lượng tài liệu với bỏ qua().
Tìm nạp số lượng tài liệu với bỏ qua() và giới hạn()

Sự khác biệt giữa giới hạn và bỏ qua trong MongoDB là gì?

Phương thức giới hạn sẽ được sử dụng để trả về số lượng kết quả tối đa từ bộ sưu tập, trong khi phương thức bỏ qua được sử dụng để bỏ qua số lượng tài liệu từ bộ sưu tập trong MongoDB . Nếu chúng ta có một tên bộ sưu tập là sinh viên, thì bộ sưu tập sinh viên chứa hàng trăm tài liệu trong đó.

Cú pháp của phương thức bỏ qua () là gì?

Cú pháp. Phương thức bỏ qua () có hai chữ ký phương thức quá tải. skip(Pattern pattern) – lấy tham số là mẫu mà Máy quét sẽ bỏ qua . skip(String pattern) – lấy tham số là String chỉ định mẫu cần bỏ qua .

Làm cách nào để sử dụng bỏ qua trong la bàn MongoDB?

Để chỉ định số tài liệu cần bỏ qua. .
Trong Thanh truy vấn, bấm Tùy chọn
Nhập một số nguyên biểu thị số lượng tài liệu cần bỏ qua vào trường Bỏ qua. nhấp để phóng to
Nhấp vào Tìm để chạy truy vấn và xem kết quả cập nhật. Ghi chú