Lọc trong MySQL là gì?

Bộ lọc SQL là các chuỗi văn bản mà bạn sử dụng để chỉ định một tập hợp con các mục dữ liệu trong một kiểu dữ liệu nội bộ hoặc cơ sở dữ liệu SQL

Đối với cơ sở dữ liệu SQL và các kiểu dữ liệu nội bộ, bộ lọc là một mệnh đề SQL WHERE cung cấp một tập hợp các phép so sánh phải đúng để một mục dữ liệu được trả về. Những so sánh này thường là giữa tên trường và giá trị tương ứng của chúng

cú pháp

Đối với các kiểu dữ liệu cơ sở dữ liệu SQL, cú pháp của bộ lọc SQL được chỉ định bởi nguồn dữ liệu cơ bản. Bộ lọc SQL là nội dung của mệnh đề SQL WHERE được chỉ định theo định dạng được cung cấp bởi cơ sở dữ liệu bên dưới. Khi các mục dữ liệu được truy xuất từ ​​nguồn dữ liệu, bộ lọc này được chuyển trực tiếp đến cơ sở dữ liệu bên dưới để xử lý

Đối với các loại dữ liệu nội bộ, bộ lọc SQL được xử lý nội bộ bởi công cụ chính sách. Đối với các kiểu dữ liệu nội bộ, cú pháp như sau

Field
				Operator
				Value [AND | OR | NOT (Field
				Operator
				Value) ...]

trong đó Trường là tên của trường kiểu dữ liệu, Toán tử là toán tử so sánh và Giá trị là giá trị trường

Chú ý. Lưu ý rằng đối với cả kiểu dữ liệu nội bộ và kiểu dữ liệu SQL, mọi ký tự chuỗi ký tự trong bộ lọc SQL phải được đặt trong dấu ngoặc kép. Công cụ chính sách diễn giải các dấu ngoặc kép trước khi xử lý bộ lọc SQL. Sử dụng dấu ngoặc kép bên trong bộ lọc SQL gây ra lỗi phân tích cú pháp.

nhà điều hành

Loại so sánh được chỉ định bởi một trong các toán tử so sánh tiêu chuẩn. Cú pháp bộ lọc SQL hỗ trợ các toán tử so sánh sau

  • >
  • <
  • =
  • <=
  • =>
  • =
  • GIỐNG

    Hạn chế. Bạn có thể sử dụng toán tử LIKE với các biểu thức chính quy được hỗ trợ bởi nguồn dữ liệu cơ bản.

Cú pháp bộ lọc SQL hỗ trợ các toán tử boolean AND, OR và NOT

Mẹo. Có thể sử dụng nhiều phép so sánh cùng với các toán tử AND, OR và NOT.

Thứ tự hoạt động

Bạn có thể chỉ định thứ tự đánh giá các biểu thức trong SQL bằng dấu ngoặc đơn

biểu thức chính quy

Tham khảo tài liệu cơ sở dữ liệu của nhà cung cấp của bạn để biết các quy tắc cú pháp cụ thể về cách sử dụng biểu thức chính quy. Một số cơ sở dữ liệu có thể yêu cầu bạn thoát các ký tự dành riêng trong truy vấn. Các bộ lọc SQL trong một chính sách được thoát bằng cách sử dụng ký tự dấu gạch chéo ngược (\). Nếu cơ sở dữ liệu cũng sử dụng dấu gạch chéo ngược làm ký tự thoát, bạn có thể cần phải thoát kép các ký tự để đảm bảo bộ lọc biểu thức chính quy được xử lý chính xác. Do chuỗi bộ lọc SQL được phân tích cú pháp hai lần, trước tiên là bởi công cụ chính sách và sau đó là bởi trình phân tích cú pháp SQL của cơ sở dữ liệu, nên có thể cần thoát kép để duy trì truy vấn trong quá trình xử lý

Ghi chú. Khi viết bộ lọc SQL có biểu thức chính quy cho Máy chủ đối tượng yêu cầu thoát các ký tự dành riêng hai lần, bạn sẽ cần thoát biểu thức ba lần. Điều này là cần thiết vì bộ lọc sẽ được phân tích cú pháp ba lần, đầu tiên bởi công cụ chính sách, sau đó là trình phân tích cú pháp SQL của ObjectServer và cuối cùng là thư viện biểu thức chính quy của ObjectServer. Ví dụ: để thoát khỏi dấu ngoặc đơn trong chuỗi "1_(22)", hãy sử dụng bộ lọc SQL này. "1_\\\\(22\\\\)".

ví dụ

Đây là một ví dụ về bộ lọc SQL

Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234

Bạn có thể sử dụng bộ lọc này để lấy tất cả các mục dữ liệu có giá trị của trường

Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
0 là
Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
1

Location = 'New York'

Sử dụng bộ lọc này, bạn nhận được tất cả các mục dữ liệu có giá trị của trường

Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
0 là
Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
1 hoặc
Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
4

________số 8_______

Để lấy tất cả các mục dữ liệu có giá trị của trường Vị trí là

Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
5 hoặc
Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
6 và giá trị của trường
Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
7 là
Location = 'NYC'
Location LIKE 'NYC.*'
Facility = 'Wandsworth' AND Facility = 'Putney'
Facility = 'Wall St.' OR Facility = 'Midtown'
NodeID >= 123345
NodeID != 123234
8

Lọc dữ liệu trong MySQL là gì?

Một trong những yêu cầu quan trọng nhất khi truy xuất dữ liệu là có thể lọc dữ liệu đó để chỉ những hàng được trả về là những hàng khớp với tiêu chí tìm kiếm đã chỉ định. This is achieved in MySQL using the WHERE clause in conjunction with the SELECT statement.

Lọc trong cơ sở dữ liệu là gì?

Lọc là một cách hữu ích để chỉ xem dữ liệu mà bạn muốn hiển thị trong cơ sở dữ liệu Access . Bạn có thể sử dụng bộ lọc để hiển thị các bản ghi cụ thể trong một biểu mẫu, báo cáo, truy vấn hoặc biểu dữ liệu hoặc để chỉ in một số bản ghi nhất định từ một báo cáo, bảng hoặc truy vấn.

Lọc dữ liệu trong bảng là gì?

Để hiển thị một tập hợp con các mục trong bảng, hãy xác định quy tắc lọc chỉ hiển thị các mục mà bạn quan tâm . Lọc không làm mới bảng; .

Bộ lọc có nghĩa là gì trong SQL?

Bộ lọc SQL là các chuỗi văn bản mà bạn sử dụng để chỉ định một tập hợp con các mục dữ liệu trong một loại dữ liệu nội bộ hoặc cơ sở dữ liệu SQL . Đối với cơ sở dữ liệu SQL và các kiểu dữ liệu nội bộ, bộ lọc là một mệnh đề SQL WHERE cung cấp một tập hợp các phép so sánh phải đúng để một mục dữ liệu được trả về.