PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.30.1
Independent Analytics – WordPress Analytics Plugin v1.30.1
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / sql / get_countries.txt
independent-analytics / sql Last commit date
sessions 2 years ago create_city.txt 3 years ago create_country.txt 3 years ago create_referrer.txt 3 years ago create_resource.txt 3 years ago create_view.txt 3 years ago get_campaign.txt 3 years ago get_campaigns.txt 2 years ago get_cities.txt 2 years ago get_city.txt 3 years ago get_countries.txt 2 years ago get_country.txt 3 years ago get_current_traffic.txt 3 years ago get_device_browsers.txt 2 years ago get_device_operating_systems.txt 2 years ago get_device_types.txt 2 years ago get_referrer.txt 3 years ago get_referrers.txt 2 years ago get_resource.txt 3 years ago get_resources.txt 2 years ago get_visitors_by_minute_interval.txt 3 years ago get_visitors_by_ten_second_interval.txt 3 years ago
get_countries.txt
48 lines
1 SELECT
2 *
3 FROM (
4 SELECT
5 countries.country_code,
6 countries.country,
7 countries.continent,
8 GROUP_CONCAT(DISTINCT countries.country_id) AS country_ids,
9 COUNT(DISTINCT IF(views.viewed_at BETWEEN :start AND :end, views.id, NULL)) AS views,
10 COUNT(DISTINCT IF(views.viewed_at BETWEEN :previous_start AND :previous_end, views.id, NULL)) AS previous_period_views,
11 COUNT(DISTINCT IF(views.viewed_at BETWEEN :start AND :end, sessions.visitor_id, NULL)) AS visitors,
12 COUNT(DISTINCT IF(views.viewed_at BETWEEN :previous_start AND :previous_end, sessions.visitor_id, NULL)) AS previous_period_visitors,
13 COUNT(DISTINCT IF(views.viewed_at BETWEEN :start AND :end, sessions.session_id, NULL)) AS sessions,
14 COUNT(DISTINCT IF(views.viewed_at BETWEEN :previous_start AND :previous_end, sessions.session_id, NULL)) AS previous_previous_sessions,
15 AVG( IF(views.viewed_at BETWEEN :start AND :end, TIMESTAMPDIFF(SECOND, sessions.created_at, sessions.ended_at), NULL)) AS average_session_duration,
16 AVG( IF(views.viewed_at BETWEEN :previous_start AND :previous_end, TIMESTAMPDIFF(SECOND, sessions.created_at, sessions.ended_at), NULL)) AS previous_period_average_session_duration,
17 COUNT(DISTINCT IF(views.viewed_at BETWEEN :start AND :end AND sessions.final_view_id IS NULL, sessions.session_id, NULL)) AS bounces,
18 SUM( IF(views.viewed_at BETWEEN :start AND :end, wc.orders, NULL)) AS wc_orders,
19 SUM( IF(views.viewed_at BETWEEN :start AND :end, wc.gross_sales, NULL)) AS wc_gross_sales,
20 SUM( IF(views.viewed_at BETWEEN :start AND :end, wc.total_refunds, NULL)) AS wc_refunds,
21 SUM( IF(views.viewed_at BETWEEN :start AND :end, wc.total_refunded, NULL)) AS wc_refunded_amount
22 FROM
23 wp_independent_analytics_views AS views
24 LEFT JOIN wp_independent_analytics_sessions AS sessions ON views.session_id = sessions.session_id
25 JOIN wp_independent_analytics_countries AS countries ON sessions.country_id = countries.country_id
26 JOIN (
27 SELECT
28 views.id AS view_id,
29 COUNT(DISTINCT wc_orders.order_id) AS orders,
30 IFNULL(SUM(wc_orders.total), 0) AS gross_sales,
31 IFNULL(SUM(wc_orders.total_refunded), 0) AS total_refunded,
32 IFNULL(SUM(wc_orders.total_refunds), 0) AS total_refunds
33 FROM
34 wp_independent_analytics_views AS views
35 LEFT JOIN wp_independent_analytics_wc_orders AS wc_orders ON views.id = wc_orders.view_id
36 AND wc_orders.status IN('wc-completed', 'completed', 'wc-processing', 'processing', 'wc-refunded', 'refunded')
37 GROUP BY
38 views.id) AS wc ON wc.view_id = views.id
39 WHERE
40 views.viewed_at BETWEEN :previous_start AND :end
41 GROUP BY
42 sessions.country_id
43 ORDER BY
44 visitors DESC,
45 views DESC,
46 country) AS subquery
47 WHERE
48 views > 0 OR previous_period_views > 0