188 lines
4.9 KiB
MySQL
188 lines
4.9 KiB
MySQL
![]() |
-- 数据拆分
|
|||
|
SELECT
|
|||
|
m_new AS m, -- 拆分后的m字段
|
|||
|
(if(i < k, quotient, quotient + remainder)) / 100.0 AS n, -- 金额(无尾差)
|
|||
|
if(i > (k - t_remainder), t_div + 1, t_div) AS t -- 数量(无尾差)
|
|||
|
FROM (
|
|||
|
SELECT
|
|||
|
splitByChar(',', m) AS m_array, -- 拆分m为数组
|
|||
|
arrayEnumerate(m_array) AS i, -- 数组索引(从1开始)
|
|||
|
n,
|
|||
|
t,
|
|||
|
arrayLength(m_array) AS k, -- 拆分后的记录数
|
|||
|
toDecimal32(n * 100, 0) AS n_cents, -- 金额转分(整数)
|
|||
|
(toDecimal32(n * 100, 0) div k) AS quotient, -- 金额商(每份基础值)
|
|||
|
(toDecimal32(n * 100, 0) % k) AS remainder, -- 金额余数(最后一行补足)
|
|||
|
(t div k) AS t_div, -- 数量商(每份基础值)
|
|||
|
(t % k) AS t_remainder -- 数量余数(最后t_remainder行补足)
|
|||
|
FROM A
|
|||
|
)
|
|||
|
ARRAY JOIN m_array AS m_new; -- 展开数组为多行
|
|||
|
|
|||
|
|
|||
|
-- 退款运费金额是否有数据:有销才有退
|
|||
|
SELECT COUNT()
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_return_mt
|
|||
|
WHERE return_freight_amt > 0;
|
|||
|
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
create_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
association_order_no,
|
|||
|
source_platform,
|
|||
|
platform_order_no,
|
|||
|
return_freight_amt
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_return_mt
|
|||
|
WHERE return_freight_amt > 0 LIMIT 1000;
|
|||
|
|
|||
|
-- 赠品是否有金额
|
|||
|
SELECT COUNT()
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE is_gift = 1 AND goods_amt > 0;
|
|||
|
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
manual_order,
|
|||
|
is_swap_order,
|
|||
|
source_platform,
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE is_gift = 1 AND goods_amt > 0;
|
|||
|
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
manual_order,
|
|||
|
is_swap_order,
|
|||
|
source_platform,
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE platform_order_no = '';
|
|||
|
|
|||
|
|
|||
|
-- 店铺编码对应多个名称
|
|||
|
|
|||
|
|
|||
|
-- 仅退款 在调整单处理,是否有大额的就是全退的
|
|||
|
|
|||
|
|
|||
|
-- 调整单和退销单的平台订单号是否和销售表一致(针对合单的)
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
manual_order,
|
|||
|
is_swap_order,
|
|||
|
source_platform,
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE platform_order_no LIKE '%,%' LIMIT 1000;
|
|||
|
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
source_platform,
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_change_mt
|
|||
|
WHERE platform_order_no = '';
|
|||
|
|
|||
|
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
source_platform,
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_change_mt
|
|||
|
WHERE platform_order_no IN (
|
|||
|
SELECT
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE platform_order_no LIKE '%,%' LIMIT 1000
|
|||
|
);
|
|||
|
|
|||
|
-- 是否换货单字段
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
manual_order,
|
|||
|
is_swap_order,
|
|||
|
source_platform,
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE is_swap_order IS NOT NULL LIMIT 1000;
|
|||
|
|
|||
|
|
|||
|
-- 斯博兹最早下单时间
|
|||
|
|
|||
|
|
|||
|
-- 线下订单和小票行数是否一致
|
|||
|
|
|||
|
|
|||
|
-- 线下支付是否一对多
|
|||
|
|
|||
|
-- 线上2024年收入 209.6亿
|
|||
|
-- 以钱货两清时间计算下
|
|||
|
SELECT SUM(order_settle_amt) FROM dwd_trade_hkaudit_ecommerce_sale_mt WHERE YEAR(mgclear_date) = '2024';
|
|||
|
|
|||
|
SELECT SUM(return_goods_amt) FROM dwd_trade_hkaudit_ecommerce_sale_return_mt WHERE platform_order_no
|
|||
|
IN (SELECT DISTINCT platform_order_no FROM dwd_trade_hkaudit_ecommerce_sale_mt WHERE YEAR(mgclear_date) = '2024');
|
|||
|
|
|||
|
SELECT SUM(special_barcode_amt) FROM dwd_trade_hkaudit_ecommerce_sale_change_mt WHERE platform_order_no
|
|||
|
IN (SELECT DISTINCT platform_order_no FROM dwd_trade_hkaudit_ecommerce_sale_mt WHERE YEAR(mgclear_date) = '2024')
|
|||
|
|
|||
|
|
|||
|
-- 线上销售均摊金额之和是否等于订单结算金额
|
|||
|
SELECT
|
|||
|
platform_order_no
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
GROUP BY platform_order_no HAVING SUM(goods_amt) <> MAX(order_settle_amt);
|
|||
|
|
|||
|
|
|||
|
-- 销售时间调整
|
|||
|
SELECT
|
|||
|
COUNT()
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE dateDiff('day', toDateTime(order_date), toDateTime(deliver_date)) > 3;
|
|||
|
|
|||
|
SELECT
|
|||
|
source_system,
|
|||
|
order_date,
|
|||
|
system_order_no,
|
|||
|
store_code,
|
|||
|
store_name,
|
|||
|
manual_order,
|
|||
|
is_swap_order,
|
|||
|
source_platform,
|
|||
|
platform_order_no,
|
|||
|
pay_date,
|
|||
|
deliver_date,
|
|||
|
mgclear_date
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE manual_order IS NOT NULL AND dateDiff('day', toDateTime(order_date), toDateTime(deliver_date)) > 3;
|
|||
|
|
|||
|
SELECT
|
|||
|
dateDiff('day', toDateTime(order_date), toDateTime(deliver_date)), COUNT(DISTINCT source_platform)
|
|||
|
FROM dwd_trade_hkaudit_ecommerce_sale_mt
|
|||
|
WHERE manual_order IS NULL
|
|||
|
GROUP BY dateDiff('day', toDateTime(order_date), toDateTime(deliver_date));
|