Menu

Biến đổi dữ liệu JSON phức tạp thành bảng dễ nhìn bằng Power Query

Lại Dân Xinh 10/06/2026 03:34 253 lượt xem 2 trả lời

Chào các anh em trong diễn đàn,

Dạo này công việc của mình hay phải làm việc với các file dữ liệu trả về dưới dạng JSON từ API. Ban đầu nhìn vào cấu trúc lồng nhau, lặp đi lặp lại của nó mà thấy nản. Tuy nhiên, từ khi biết đến sức mạnh của Power Query, mọi thứ trở nên đơn giản hơn rất nhiều.

Hôm nay mình muốn chia sẻ nhanh cách mình thường làm để biến những cái mớ JSON 'khó nhằn' kia thành một bảng dữ liệu Excel quen thuộc, dễ dàng phân tích và báo cáo.

Các bước cơ bản mình hay làm:

  • Đầu tiên, mình dùng chức năng Get Data -> From File -> From JSON để nạp dữ liệu vào Power Query Editor.
  • Sau khi nạp vào, các bạn sẽ thấy dữ liệu thường ở dạng Record hoặc List. Lúc này, mình sẽ click vào các đường link (Record, List) để đi sâu vào cấu trúc.
  • Đối với các List chứa nhiều Record giống nhau, mình thường dùng chức năng To Table.
  • Sau đó, nếu có các cột chứa Record hoặc List khác, mình sẽ dùng nút Expand (hình hai mũi tên hai chiều) để bung các cột đó ra thành các cột mới. Power Query sẽ tự động gợi ý tên cột cho mình, đôi khi cần phải chỉnh sửa lại một chút.
  • Trong quá trình này, có thể gặp các cột có kiểu dữ liệu chưa phù hợp (ví dụ: ngày tháng bị nhận dạng thành text). Mình sẽ dùng chức năng Transform -> Data Type để chỉnh sửa lại cho đúng.
  • Cuối cùng, sau khi đã có được cấu trúc bảng mong muốn, mình nhấn Close & Load để đưa dữ liệu về lại Excel.

Ví dụ, với một file JSON có cấu trúc như sau:

{
  "data": [
    {
      "id": 1,
      "name": "Sản phẩm A",
      "price": 100000
    },
    {
      "id": 2,
      "name": "Sản phẩm B",
      "price": 150000
    }
  ]
}

Sau khi qua Power Query, mình có thể dễ dàng có được bảng:

idnameprice1Sản phẩm A1000002Sản phẩm B150000

Cách này giúp mình tiết kiệm rất nhiều thời gian so với việc phải copy-paste thủ công. Các bạn đã từng xử lý dữ liệu JSON bằng Power Query chưa? Có mẹo nào hay hơn thì chia sẻ cho mọi người cùng học hỏi nhé!

4

Cảm ơn bạn đã chia sẻ kinh nghiệm xử lý dữ liệu JSON bằng Power Query. Đúng là ban đầu nhìn JSON lồng nhau cũng hơi "ngợp", nhưng Power Query đúng là "cứu cánh" thật!

Mình cũng hay dùng cách tương tự, đặc biệt là các bước Expand to New RowsExpand Record để làm phẳng cấu trúc. Có khi nào bạn gặp trường hợp dữ liệu JSON có cấu trúc không đồng nhất giữa các bản ghi không? Mình hay phải thêm cột điều kiện để xử lý mấy trường hợp đó.

0

Đúng là JSON nhiều lúc nhìn "nhức đầu" thật bạn ạ, nhưng mà dùng Power Query thì đúng là "ngon" hẳn. Mình cũng hay gặp trường hợp cấu trúc JSON không đồng nhất, lúc đó thường dùng Table.AddColumn với hàm try...otherwise để xử lý những dòng bị lỗi hoặc thiếu trường. Cách này giúp giữ cho bảng kết quả của mình luôn gọn gàng mà không bị vướng lỗi. Không biết bạn có hay dùng cách này không?

1

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký