Tính năng này chỉ có trong Analytics 360 (thuộc Google Marketing Platform). Tìm hiểu thêm về Google Marketing Platform. |
Bài viết này chứa các ví dụ về cách tạo truy vấn của dữ liệu Analytics mà bạn xuất sang BigQuery. Chúng tôi đã tạo sẵn tập dữ liệu mẫu để bạn có thể thực hành với một số truy vấn trong bài viết này.
Nội dung trong bài viết này:- Tối ưu hoá truy vấn
- Mẹo và các phương pháp hay nhất
- Ví dụ về truy vấn cơ bản
- Tổng số [chỉ số] trên mỗi [phương diện]
- Tỷ lệ thoát trung bình trên mỗi [phương diện]
- Số lượt xem trang sản phẩm trung bình theo kiểu người mua hàng
- Số giao dịch trung bình trên mỗi người mua
- Số tiền trung bình được chi tiêu trên mỗi phiên hoạt động
- Trình tự các lượt truy cập (phân tích đường dẫn)
- Nhiều phương diện tuỳ chỉnh ở cấp lượt truy cập hoặc phiên hoạt động
- Ví dụ về truy vấn nâng cao
- Sản phẩm được mua bởi những khách hàng đã mua Sản phẩm A (Thương mại điện tử cổ điển)
- Sản phẩm được mua bởi những khách hàng đã mua sản phẩm A (Thương mại điện tử nâng cao)
- Số lượt tương tác trung bình của người dùng trước khi mua hàng
- Tỷ lệ phần trăm hàng đã bán trên mỗi sản phẩm
- Khả năng sinh lời của mỗi sản phẩm
- Khả năng sinh lời thực tế của mỗi sản phẩm
Tối ưu hóa truy vấn
Mỗi truy vấn bạn chạy đóng góp vào phụ cấp xử lý dữ liệu hàng tháng. Nếu bạn chọn các trường không liên quan, số lượng dữ liệu cần được xử lý sẽ tăng lên. Khi đó, bạn sẽ sử dụng mức dữ liệu được phép hằng tháng nhiều hơn cần thiết. Truy vấn được tối ưu hoá giúp bạn sử dụng mức dữ liệu được phép hằng tháng một cách hiệu quả hơn.
Tìm hiểu thêm về mức giá.
Chỉ chọn những gì bạn cần
Khi bạn xây dựng truy vấn, hãy chọn các trường có liên quan trong câu lệnh SELECT. Khi không gọi các trường không liên quan, bạn sẽ giảm lượng dữ liệu và thời gian cần để xử lý truy vấn.
Ví dụ: tránh sử dụng toán tử ký tự đại diện
Dạng không hợp lệ: sử dụng toán tử ký tự đại diện |
---|
SELECT * |
Dạng hợp lệ: sử dụng tên trường để tránh việc xử lý không cần thiết |
---|
SELECT field1, field2 |
Cho phép lưu vào bộ nhớ đệm
Khi cần thiết, tránh sử dụng các hàm dưới dạng trường. Các hàm (như NOW()
hoặc TODAY()
) trả lại các kết quả khác nhau, ngăn chặn các truy vấn được lưu vào bộ nhớ cache và do đó được trả lại nhanh hơn. Thay vào đó, hãy sử dụng thời gian và ngày tháng cụ thể.
Sử dụng bảng trung gian cho các truy vấn con thường được sử dụng
Nếu nhận thấy bạn liên tục sử dụng một truy vấn cụ thể dưới dạng truy vấn con, bạn có thể lưu truy vấn đó dưới dạng bảng trung gian bằng cách nhấp vào Lưu dưới dạng bảng phía trên kết quả truy vấn. Sau đó, bạn có thể tham chiếu đến bảng đó trong mục FROM
của truy vấn. Thao tác này có thể giúp giảm bớt lượng dữ liệu cũng như thời gian cần thiết để xử lý.
sử dụng bảng trung gian |
---|
SELECT field1, field2 |
Gỡ lỗi truy vấn
BigQuery gỡ lỗi mã của bạn khi bạn tạo mã. Trong cửa sổ cấu trúc, phần gỡ lỗi được biểu thị ngay bên dưới truy vấn. Việc gỡ lỗi cũng có sẵn thông qua API với cờ dryRun.
Truy vấn hợp lệ có chỉ báo màu xanh lá cây mà bạn có thể nhấp vào để xem lượng dữ liệu được xử lý theo truy vấn. Tính năng này cung cấp cho bạn cơ hội để tối ưu hóa dữ liệu trước khi chạy truy vấn để bạn có thể tránh việc xử lý dữ liệu không cần thiết.
Truy vấn không hợp lệ có chỉ báo màu đỏ mà bạn có thể nhấp vào để xem thông tin về lỗi, đồng thời tìm dòng và cột nơi xảy ra lỗi. Trong ví dụ bên dưới, câu lệnh GROUP BY trống và lỗi được xác định chính xác.
Mẹo và phương pháp hay nhất
Sử dụng tập dữ liệu mẫu
Các ví dụ sau sử dụng tập dữ liệu mẫu của Google Analytics.
Để sử dụng các truy vấn về dữ liệu của riêng bạn, chỉ cần thay thế tên dự án và tập dữ liệu trong các ví dụ bằng tên dự án và tập dữ liệu của riêng bạn.
Sử dụng SQL chuẩn so với SQL cũ
BigQuery hỗ trợ hai phương ngữ SQL:
Bài viết về Cách di chuyển sang SQL chuẩn giải thích sự khác biệt giữa hai phương ngữ.
SQL chuẩn hiện là phương ngữ SQL ưa thích để truy vấn dữ liệu được lưu trữ trong BigQuery.
Hãy xem bài viết về Cách bật SQL chuẩn để biết thông tin về cách bật SQL chuẩn trong CLI, API, giao diện người dùng BigQuery hoặc bất kỳ giao diện nào bạn đang sử dụng.
Cách dễ nhất để bắt đầu là thêm nhận xét "standardSQL" vào đầu các truy vấn SQL chuẩn của bạn như được trình bày trong các ví dụ sau.
Khi bạn sử dụng SQL cũ, dữ liệu Google Analytics 360 sẽ được chuyển qua một bảng mới hằng ngày. Để truy vấn nhiều bảng cùng một lúc, bạn có thể phân tách tên các bảng bằng dấu phẩy, sử dụng hàm ký tự đại diện bảng TABLE_DATE_RANGE
, hoặc sử dụng nhiều hàm TABLE_DATE_RANGE
được phân tách bằng dấu phẩy, như trong các ví dụ sau.
Truy vấn nhiều bảng
Các ví dụ sau đây thể hiện các truy vấn SQL chuẩn và SQL cũ cho cùng một dữ liệu.
3 ngày
SQL chuẩn
3 ngày sử dụng UNION ALL |
---|
#standardSQL |
SQL cũ
3 ngày sử dụng tên bảng được phân tách bằng dấu phẩy |
---|
SELECT |
1095 ngày qua
SQL chuẩn
1095 ngày qua sử dụng _TABLE_SUFFIX |
---|
#standardSQL |
SQL cũ
1095 ngày qua sử dụng TABLE_DATE_RANGE |
---|
SELECT |
36 tháng qua
SQL chuẩn
36 tháng qua sử dụng _TABLE_SUFFIX |
---|
#standardSQL |
SQL cũ
36 tháng qua sử dụng TABLE_DATE_RANGE |
---|
SELECT |
3 năm qua
SQL chuẩn
3 năm qua sử dụng _TABLE_SUFFIX |
---|
#standardSQL |
SQL cũ
3 năm qua sử dụng TABLE_DATE_RANGE |
---|
SELECT |
Phạm vi ngày cụ thể
SQL chuẩn
Phạm vi ngày cụ thể sử dụng _TABLE_SUFFIX |
---|
#standardSQL |
SQL cũ
Phạm vi ngày cụ thể sử dụng TABLE_DATE_RANGE |
---|
SELECT |
Dữ liệu 3 năm qua cộng với dữ liệu hôm nay (trong ngày)
SQL chuẩn
Dữ liệu 3 năm qua cộng với dữ liệu hôm nay (trong ngày) sử dụng UNION ALL & _TABLE_SUFFIX |
---|
Lưu ý: truy vấn mẫu này sẽ không hoạt động với tập dữ liệu công khai của Google Analytics vì hiện không có bảng trong ngày. |
#standardSQL |
SQL cũ
Dữ liệu 3 năm qua cộng với dữ liệu hôm nay (trong ngày) sử dụng nhiều TABLE_DATE_RANGE |
---|
Lưu ý: truy vấn mẫu này sẽ không hoạt động với tập dữ liệu công khai của Google Analytics vì hiện không có bảng trong ngày. |
SELECT |
Ví dụ về truy vấn cơ bản
Phần này giải thích cách xây dựng các truy vấn cơ bản bằng cách sử dụng chỉ số và thứ nguyên từ dữ liệu Analytics mẫu.
Tổng số [chỉ số] trên mỗi [phương diện]?
Dưới đây là các tập lệnh mẫu cho câu hỏi: Tổng số giao dịch được tạo cho mỗi trình duyệt thiết bị trong tháng 7 năm 2017 là bao nhiêu?
SQL chuẩn
Tổng số giao dịch trên mỗi trình duyệt thiết bị vào tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Tổng số giao dịch trên mỗi trình duyệt thiết bị vào tháng 7 năm 2017 |
---|
SELECT |
Tỷ lệ thoát trung bình trên mỗi [ phương diện ]?
Tỷ lệ thoát thực tế được định nghĩa là tỷ lệ phần trăm lượt truy cập có một lần truy cập trang duy nhất. Dưới đây là các tập lệnh mẫu cho câu hỏi: Tỷ lệ thoát thực tế trên mỗi nguồn lưu lượng truy cập là bao nhiêu?
SQL chuẩn
Tỷ lệ thoát trên mỗi nguồn lưu lượng truy cập trong tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Tỷ lệ thoát trên mỗi nguồn lưu lượng truy cập trong tháng 7 năm 2017 |
---|
SELECT |
Số lượt xem trang sản phẩm trung bình theo kiểu người mua (người mua so với người dùng không mua)
Dưới đây là các tập lệnh mẫu cho câu hỏi: Số lần truy cập trung bình vào trang sản phẩm cho người dùng đã thực hiện mua hàng trong tháng 7 năm 2017 là bao nhiêu?
SQL chuẩn
Số lượt xem trang sản phẩm trung bình cho những người dùng đã mua hàng trong tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Số lượt xem trang sản phẩm trung bình cho những người dùng đã mua hàng trong tháng 7 năm 2017 |
---|
SELECT |
Dưới đây là các tập lệnh mẫu cho câu hỏi: Số lượt xem trang sản phẩm trung bình cho những người dùng không mua hàng trong tháng 7 năm 2017 là bao nhiêu?
SQL chuẩn
Số lượt xem trang sản phẩm trung bình cho những người dùng không mua hàng trong tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Số lượt xem trang sản phẩm trung bình cho những người dùng không mua hàng trong tháng 7 năm 2017 |
---|
SELECT |
Số giao dịch trung bình trên mỗi người mua
Dưới đây là các tập lệnh mẫu cho câu hỏi: Tổng số giao dịch trung bình trên mỗi người dùng đã thực hiện mua hàng trong tháng 7 năm 2017 là bao nhiêu?
SQL chuẩn
Số giao dịch trung bình trên mỗi người dùng đã mua hàng trong tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Số giao dịch trung bình trên mỗi người dùng đã mua hàng trong tháng 7 năm 2017 |
---|
SELECT |
Số tiền trung bình được chi tiêu trên mỗi phiên hoạt động
Dưới đây là các tập lệnh mẫu cho câu hỏi: Số tiền trung bình được chi tiêu cho mỗi phiên trong tháng 7 năm 2017 là bao nhiêu?
SQL chuẩn
Số tiền trung bình được chi tiêu trên mỗi phiên hoạt động trong tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Số tiền trung bình được chi tiêu trên mỗi phiên hoạt động trong tháng 7 năm 2017 |
---|
SELECT |
Trình tự các lượt truy cập
Dưới đây là các tập lệnh mẫu cho câu hỏi: Chuỗi lượt xem trang là gì?.
SQL chuẩn
Trình tự các trang được người dùng xem trong tháng 7 năm 2017 |
---|
#standardSQL |
SQL cũ
Trình tự các trang được người dùng xem trong tháng 7 năm 2017 |
---|
SELECT |
Trong truy vấn này, bạn giới hạn loại lượt truy cập thành PAGES
để tránh xem các lượt tương tác sự kiện hoặc giao dịch. Mỗi dòng của kết quả đại diện cho một lượt xem trang, và được hiển thị theo thứ tự mặc định của các trường trong câu lệnh SELECT
.
Nhiều thứ nguyên tùy chỉnh ở cấp lần truy cập hoặc phiên
phương diện tuỳ chỉnh ở cấp lượt truy cập |
---|
SELECT fullVisitorId, visitId, hits.hitNumber, hits.time, |
phương diện tuỳ chỉnh ở cấp phiên hoạt động |
---|
SELECT fullVisitorId, visitId, |
Trong mỗi truy vấn:
Câu lệnh SELECT
truy vấn để biết các trường phương diện và chỉ số có liên quan.
Hàm MAX
:
- Trả lại thứ nguyên tùy chỉnh dưới dạng cột mới. Bạn có thể lặp lại hàm để trả lại nhiều thứ nguyên tùy chỉnh dưới dạng cột mới.
WITHIN hits
vàWITHIN RECORD
đánh giá điều kiện bên trong các trường lặp lại trong BigQuery.- Điều kiện trong hàm
MAX
được đánh giá cho mỗi phương diện tuỳ chỉnh, nhưng đối với bất kỳ điều kiện nào không phải làindex=1 (hits)
hoặcindex=2 (sessions)
, thì giá trị trả về sẽ làNULL
. - Giá trị trả về là giá trị tối đa. Đây là giá trị của Phương diện tuỳ chỉnh 1 cho số lượt truy cập, hoặc Phương diện tuỳ chỉnh 2 cho số phiên hoạt động, vì tất cả các giá trị khác đều là
NULL
.
Ví dụ về truy vấn nâng cao
Bây giờ bạn đã quen thuộc với các truy vấn đơn giản, bạn có thể tạo truy vấn bằng cách sử dụng các hàm và tính năng nâng cao khả dụng trong BigQuery.
Sản phẩm được mua bởi khách hàng đã mua sản phẩm A (Thương mại điện tử cổ điển)
Dưới đây là tập lệnh sườn cho câu hỏi: Khách hàng đã mua sản phẩm A mua những sản phẩm nào khác?
sản phẩm được mua bởi khách hàng đã mua sản phẩm A (Thương mại điện tử cũ) |
---|
SELECT hits.item.productName AS other_purchased_products, COUNT(hits.item.productName) AS quantity |
- Trong dòng đầu tiên, bạn chọn tất cả các mặt hàng khác đã được người dùng mua và sử dụng hàm tổng hợp
COUNT()
để tính số lượng của từng mặt hàng khác đã được mua. Sau đó, kết quả sẽ hiển thị trong trường gắn nhãnquantity
, thể hiện mặt hàng liên quan trong trường sản phẩm gắn nhãnother_purchased_products
. - Trong truy vấn con màu xám, bạn chỉ chọn những người dùng duy nhất (
fullVisitorId
) đã thực hiện giao dịch (totals.transactions>=1
) và trong giao dịch đã mua sản phẩm A (WHERE hits.item.productName CONTAINS 'Product Item Name A'
).
Các quy tắc (câu lệnh WHERE
và AND
) trong truy vấn cấp cao nhất (màu xanh lá cây) bỏ qua các giá trị trong hits.item.productName
có giá trị rỗng và chứa sản phẩm A.
Dưới đây là ví dụ về truy vấn Nếu khách hàng mua Bút Brighton Metallic - Một bộ 4 bút, thì (các) sản phẩm khác mà họ đã mua là gì?
các sản phẩm được mua bởi khách hàng đã mua "Bút Brighton Metallic (Một bộ 4 bút)" vào ngày 24 tháng 6 năm 2013 |
---|
SELECT hits.item.productName AS other_purchased_products, COUNT(hits.item.productName) AS quantity |
Trong Dremel/BigQuery, việc sử dụng WHERE expr IN
sẽ kích hoạt một JOIN, và các giới hạn về kích thước sẽ áp dụng. Cụ thể, kích thước bên phải của JOIN (trong trường hợp này là số người truy cập) phải ít hơn 8 MB. Trong Dremel, đây được gọi là broadcast JOIN. Khi kích thước này vượt quá 8MB, bạn cần kích hoạt shuffled JOIN bằng cách sử dụng cú pháp JOIN EACH. Rất tiếc, bạn không thể thực hiện cách này bằng cách sử dụng IN, nhưng có thể viết lại chính truy vấn này bằng JOIN.
Sản phẩm được mua bởi khách hàng đã mua sản phẩm A (Thương mại điện tử nâng cao)
Điều này tương tự với truy vấn sườn trước đó nhưng hoạt động cho Thương mại điện tử nâng cao. Bạn có thể sử dụng TABLE_DATE_RANGE
để tạo truy vấn dữ liệu trong nhiều ngày.
sản phẩm được mua bởi một khách hàng đã mua sản phẩm A (Thương mại điện tử nâng cao) |
---|
SELECT hits.product.productSKU AS other_purchased_products, COUNT(hits.product.productSKU) AS quantity |
Số lượt tương tác trung bình của người dùng trước khi mua hàng
Đây là ví dụ về một truy vấn chứa lệnh JOIN() [...] ON
, lệnh này chỉ phụ thuộc và dữ liệu Analytics.
Bên dưới là tập lệnh sườn cho câu hỏi: Số lượt tương tác trung bình với người dùng trước khi mua hàng là bao nhiêu?
số lượt tương tác của người dùng trước khi mua hàng |
---|
SELECT one.hits.item.productSku AS ProductSku, ( sum_of_hit_number / total_hits ) AS avg_hit_number |
- Dòng đầu tiên thực hiện phép toán chính để tìm số lượt tương tác của người dùng trung bình trên mỗi sản phẩm và truy vấn này sẽ tạo kết hợp giữa hai truy vấn phụ có tên là ‘Alias_Name_1’ và ‘Alias_Name_2’.
- ‘Alias_Name_1’ được sử dụng để tạo một trường sử dụng hàm tổng hợp
SUM()
để tổng hợp tất cả số lần truy cập được ghi lại cho một sản phẩm. - ‘Alias_Name_2’ được sử dụng để tìm số lần truy cập được người dùng thực hiện cho mỗi sản phẩm bằng cách sử dụng hàm
COUNT()
. - Dòng cuối cùng hiển thị trường chung (
hits.item.productSku
) được chia sẻ giữa hai tập dữ liệu được kết hợp.
Dưới đây là ví dụ về truy vấn Vào ngày 10 tháng 9 năm 2013, số lần tương tác của người dùng trung bình trước khi mua hàng là bao nhiêu?
số lượt tương tác của người dùng trước khi mua hàng vào ngày 10 tháng 9 năm 2013 |
---|
SELECT one.hits.item.productSku AS ProductSku, ( sum_of_hit_number / total_hits ) AS avg_hit_number |
Tỷ lệ phần trăm hàng đã bán trên mỗi sản phẩm
Đây là ví dụ về truy vấn không chỉ phụ thuộc vào dữ liệu Analytics, mà còn phụ thuộc vào dữ liệu không phải của Analytics. Bằng cách kết hợp cả hai tập dữ liệu, bạn có thể bắt đầu hiểu hành vi của người dùng ở cấp được phân đoạn nhiều hơn. Bạn có thể nhập dữ liệu không phải của Analytics vào BigQuery, nhưng lưu ý rằng điều này sẽ góp phần vào chi phí lưu trữ dữ liệu hàng tháng của bạn.
Bên dưới là tập lệnh sườn cho câu hỏi: Tỷ lệ phần trăm hàng đã bán trên mỗi sản phẩm là bao nhiêu?
tỷ lệ phần trăm hàng đã bán trên mỗi sản phẩm |
---|
SELECT AnalyticsImport.product_data_20130728.productId, ((( one.quantity_sold ) / ( AnalyticsImport.product_data_20130728.productstock + one.quantity_sold )) * 100 ) AS percentage_of_stock_sold |
- Dòng đầu tiên trả về hai trường: một trường chứa tất cả các mã sản phẩm và trường còn lại là phép toán sẽ cho thấy tỷ lệ phần trăm hàng đã bán cho mã sản phẩm đó.
- Do truy vấn này phụ thuộc vào hai tập dữ liệu, bạn cần sử dụng hàm
JOIN() ... ON
. Lệnh này liên kết các hàng từ hai tập dữ liệu này dựa trên trường mà cả hai tập dữ liệu đều có. Trong trường hợp này, hai tập dữ liệu này là[ ‘Imported_DataSet’ ]
và‘Alias_Name’
. [ ‘Imported_DataSet’ ]
là dữ liệu không phải của Analytics. Đây là tập dữ liệu chứa trường chỉ số về số lượng hàng còn lại (Imported DataSet.’stock_left_field’
) và trường phương diện mã sản phẩm (Imported_DataSet.’productId_field’
).‘Alias_Name’
là tên được chỉ định cho dữ liệu được truy vấn con màu xám trả về. Truy vấn con này sử dụng dữ liệu Analytics để tìm hiểu tổng số lượng mặt hàng đã bán trên mỗi sản phẩm.- Dòng cuối cùng sử dụng câu lệnh
ON
để hiển thị trường chung giữa hai tập dữ liệu và nơi hai tập dữ liệu được kết hợp.
Trong truy vấn này, nhiều biến có tên tập dữ liệu kèm theo biến dưới dạng tiền số (ví dụ: Imported_DataSet.’productId_field’, Alias_Name.quantity_sold
). Tiền số này làm rõ trường bạn đang chọn, cũng làm rõ nguồn của tập dữ liệu.
Dưới đây là ví dụ về truy vấn Tỷ lệ phần trăm hàng đã bán trên mỗi sản phẩm vào ngày 28 tháng 7 năm 2013 là bao nhiêu?
tỷ lệ phần trăm hàng đã bán trên mỗi sản phẩm vào ngày 28 tháng 7 năm 2013 |
---|
SELECT AnalyticsImport.product_data_20130728.productId, ( ( ( one.quantity_sold ) / ( AnalyticsImport.product_data_20130728.productstock + one.quantity_sold ) ) * 100 ) AS percentage_of_stock_sold |
Khả năng sinh lời của mỗi sản phẩm
Bên dưới là tập lệnh sườn cho câu hỏi: Khả năng sinh lời của mỗi sản phẩm là gì?
lợi nhuận của sản phẩm |
---|
SELECT Alias_Name.hits.item.productSku, ( Imported_DataSet.’product profit field’ * Alias_Name.quantity ) AS profit |
- Dòng đầu tiên chứa phép toán để tính tổng lợi nhuận được tạo trên mỗi sản phẩm.
- Truy vấn con màu xám sử dụng dữ liệu không phải của Analytic thu thập dữ liệu về bao nhiêu lợi nhuận sẽ được tạo khi sản phẩm được bán.
- Truy vấn con màu đỏ là truy vấn con dữ liệu Analytics, sẽ được kết hợp với dữ liệu không phải của Analytics. truy vấn sẽ tính số lượng mặt hàng đã bán trên mỗi sản phẩm.
- Hàng cuối cùng sử dụng câu lệnh
ON
để làm rõ trường mà hai tập dữ liệu chia sẻ. Trong trường hợp này, trường đó là mã sản phẩm.
Dưới đây là ví dụ về truy vấn Khả năng sinh lời của mỗi sản phẩm vào ngày 28 tháng 7 năm 2013 là bao nhiêu?
lợi nhuận theo sản phẩm vào ngày 28 tháng 7 năm 2013 |
---|
SELECT two.hits.item.productSku, ((AnalyticsImport.product_data_20130728.productprice-AnalyticsImport.product_data_20130728.productcost)*two.quantity) AS profit |
Lợi nhuận được tính bằng cách tìm ra chênh lệch giữa giá sản phẩm được bán và chi phí sản xuất sản phẩm. Thông tin này được lưu trên tập dữ liệu không phải của GA.
Khả năng sinh lời thực tế của mỗi sản phẩm (có tính đến tiền hoàn lại)
Bên dưới là tập lệnh sườn cho câu hỏi: Khả năng sinh lời thực tế của mỗi sản phẩm là bao nhiêu?
lợi nhuận thực tế theo sản phẩm |
---|
SELECT Alias_Name.hits.item.productSku, (gross_profit-total_refund_revenue) AS real_profit |
- Đây là câu hỏi rất giống với câu hỏi Khả năng sinh lời của mỗi sản phẩm là bao nhiêu? Sự khác biệt duy nhất là trong tập dữ liệu không phải của Analytics trong truy vấn con màu xám và phép toán tính lợi nhuận thực tế trong dòng đầu tiên.
- Trong tập dữ liệu không phải của Analytics, bạn cũng đang tính toán tổng số tiền đã chi tiêu trên tiền hoàn lại (trong câu lệnh
SELECT
của truy vấn con màu đỏ). - Sau đó, bạn thực hiện phép toán trong dòng 1 để tìm lợi nhuận thực tế bằng cách lấy tổng lợi nhuận trừ đi doanh thu đã chi tiêu cho tiền hoàn lại.
Để biết thêm thông tin về truy vấn, vui lòng xem phần về khả năng sinh lời của từng sản phẩm.
Dưới đây là ví dụ về truy vấn sau Khả năng sinh lời thực tế của mỗi sản phẩm vào ngày 28 tháng 7 năm 2013 là bao nhiêu?
lợi nhuận thực tế của sản phẩm vào ngày 28 tháng 7 năm 2013 |
---|
SELECT two.hits.item.productSku, (gross_profit-total_refund_revenue) AS real_profit |
Lợi nhuận thực tế sẽ tính đến khả năng sinh lời của sản phẩm sau khi xét đến sản phẩm được hoàn tiền lại. Để tính tổng doanh thu hoàn loại cho một sản phẩm:
tổng doanh thu hoàn lại cho một sản phẩm = ( giá của sản phẩm + giá vận chuyển trả lại cho sản phẩm ) * số lượng sản phẩm bị trả lại