Cách trích xuất dữ liệu từ loại JSON trong MySQL

Cach Trich Xuat Du Lieu Tu Loai Json Trong Mysql



Với MySQL, bạn có thể trích xuất dữ liệu từ loại JSON bằng các tùy chọn khác nhau. MySQL hỗ trợ làm việc với các kiểu dữ liệu JSON. Khi biết cách thực hiện, bạn có thể nhanh chóng truy cập và trích xuất dữ liệu từ các đối tượng JSON.

Bài đăng hôm nay hướng dẫn bạn cách trích xuất dữ liệu từ loại JSON trong MySQL bằng nhiều cách khác nhau. Chúng tôi sẽ đề cập đến công việc chung về trích xuất dữ liệu từ loại JSON trong MySQL và xem thêm cách làm việc với các loại dữ liệu JSON trong bảng MySQL để trích xuất dữ liệu khác nhau từ các cột.

Cách trích xuất dữ liệu JSON trong MySQL

Khi bạn muốn trích xuất dữ liệu JSON trong MySQL, hàm chính bạn nên sử dụng là JSON_EXTRACT hoạt động theo cú pháp sau:







JSON_EXTRACT ( json_file, đường dẫn [ , con đường ] ... ) ;

Bạn phải chỉ định hai đối số khi thực thi hàm. Đối số đầu tiên là tài liệu JSON. Cái còn lại là đường dẫn đến giá trị trong kiểu dữ liệu JSON mà bạn muốn trích xuất. Hãy đưa ra nhiều ví dụ khác nhau để giúp hiểu cách trích xuất dữ liệu từ loại JSON trong MySQL.



Ví dụ 1: Trích xuất một giá trị

Ví dụ đầu tiên là một truy vấn đơn giản trả về một giá trị dựa trên đường dẫn đã chỉ định trong cột được chỉ định trong dữ liệu JSON. Ví dụ sau chỉ định đường dẫn sau toán tử dấu chấm và đường dẫn là tên khóa trong dữ liệu JSON.







Đầu ra chứa tên khóa được chỉ định mà bạn muốn đạt được và được in ra trong dấu ngoặc kép. Để xóa dấu ngoặc kép, bạn có thể sử dụng JSON_VALUE() thay vì JSON_EXTRACT() như trong ví dụ sau:



Ví dụ 2: Trích xuất nhiều giá trị

Khi trích xuất nhiều đường dẫn trong dữ liệu JSON, bạn phải chỉ định các đường dẫn đích sau toán tử dấu chấm và phân tách chúng bằng dấu phẩy. Hãy có một ví dụ trong đó chúng tôi muốn trích xuất hai giá trị trong cùng một dữ liệu JSON mà chúng tôi đã sử dụng trong ví dụ trước. Đối với điều đó, chúng tôi có ví dụ của chúng tôi như sau:

Ví dụ 3: Trích xuất dữ liệu JSON từ một mảng

Khi có dữ liệu JSON trong một mảng, bạn có thể trích xuất dữ liệu đó bằng cách chỉ định vị trí của giá trị cụ thể.

Đây là một ví dụ trong đó chúng ta có một dãy số và đang trích xuất giá trị ở vị trí 3 bằng cách sử dụng dấu “$”:

Ví dụ 4: Trích xuất dữ liệu JSON từ bảng

Giả sử bạn có một bảng chứa một cột có JSON. Cũng có thể trích xuất dữ liệu từ nó. Hãy tạo một bảng mẫu mà chúng ta sẽ sử dụng để trình diễn. Chúng tôi đặt tên bảng của mình là “khóa học” có ba cột.

Chúng ta cũng có thể chèn dữ liệu vào bảng của mình.

Bảng cuối cùng chứa dữ liệu JSON của chúng tôi xuất hiện như sau:

Giả sử chúng ta muốn trích xuất dữ liệu JSON trong cột “course_details” trong bảng có mã bằng F12. Chúng tôi thực hiện lệnh sau. Lưu ý rằng trong JSON_EXTRACT(), chúng tôi chỉ định đối số đầu tiên là cột chứa dữ liệu JSON và đối số thứ hai là giá trị cụ thể trong dữ liệu JSON.

Khi chỉ định tên khóa, bạn phải bắt đầu bằng toán tử “$” và dấu chấm. Trong trường hợp của chúng tôi, tên khóa là “Mã” và chúng tôi muốn tìm các giá trị trong đó mã khớp với dữ liệu nhất định.

Kết quả đầu ra trước đó khớp với kết quả mong đợi của chúng tôi, điều này xác nhận rằng chúng tôi đã trích xuất được dữ liệu JSON.

Bạn cũng có thể chỉ định các cột cụ thể trong bảng mà bạn muốn truy xuất. Sau đó, bạn có thể sử dụng toán tử “->” cho dữ liệu JSON. Nó cũng là viết tắt của JSON_EXTRACT() và bạn xác định giá trị mục tiêu bằng cách sử dụng toán tử “$” và dấu chấm.

Ví dụ sau đây chọn hai cột và trích xuất tên khóa “Tên” từ dữ liệu JSON cho tất cả các mục nhập:

Bạn có thể loại bỏ dấu ngoặc kép trong dữ liệu được trích xuất bằng cách thay thế toán tử “->” bằng toán tử “->>” rồi chỉ định tên khóa đích như trong ví dụ sau:

Phần kết luận

Bài đăng này giải thích cách trích xuất dữ liệu từ loại JSON trong MySQL. Chúng tôi đã đưa ra các ví dụ khác nhau về cách triển khai chức năng “trích xuất” và các tùy chọn khác nhau mà bạn có thể sử dụng. Hy vọng rằng điều đó đã khắc phục được truy vấn của bạn và giúp bạn hiểu cách làm việc với dữ liệu JSON trong MySQL.