SQL 获取数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 获取数据相关的知识,希望对你有一定的参考价值。
SELECT
COMPLAIN_CODE '投诉单号',
ORDER_NO '订单号',
RESPONSIBILITY '责任单位名称',
CREATE_TIME '创建时间',
COMPLAIN_TYPE '发起工单类型',
DUTY_COMPLAIN_TYPE '定责投诉类型',
COMPLAIN_SOUND_TYPE '声音归类',
COMPLAIN_DATE '投诉日期',
MEMO '情况说明',
HANDLER1 "发起人工号",
HANDLER2 "结束人工号",
HANDLER_DATE1 "投诉开始时间",
HANDLER_DATE2 "投诉结束时间",
HANDLER_TYPE '处理类型',
EOOR_SHIPPER_CONTACT '收货方联系人',
EOOR_SHIPPER_CITY_NAME '发货地址城市',
EOOR_CONSIGNEE_CITY_NAME '收货地址城市',
EOOR_ORDER_TYPE '订单类型',
SEND_DATE '发货时间',
EOOR_SERVICE_MODE '服务类型',
EOOS_SUPPLIER_FULL_NAME1 '供应商全名',
EOTS_LINK_TYPE '落地配'
FROM
(
SELECT
t.COMPLAIN_CODE,
t.ORDER_NO,
t.RESPONSIBILITY,
t.CREATE_TIME,
CASE t.COMPLAIN_TYPE
WHEN 'SAFETY' THEN
'安全类'
WHEN 'CUSTOMER' THEN
'客户类'
WHEN 'AGEING' THEN
'时效类'
WHEN 'ACTION' THEN
'客户体验类'
WHEN 'DELIVERY' THEN
'配送类'
ELSE
'货代业务线上化'
END 'COMPLAIN_TYPE',
t.COMPLAIN_SOUND_TYPE,
t.COMPLAIN_DATE,
t.MEMO,
t.DUTY_COMPLAIN_TYPE,
b. HANDLER 'HANDLER1',
b.HANDLER_TYPE,
c.EOOR_SHIPPER_CONTACT,
c.EOOR_SHIPPER_CITY_NAME,
c.EOOR_CONSIGNEE_CITY_NAME,
c.EOOR_ORDER_TYPE,
c.SEND_DATE,
c.EOOR_SERVICE_MODE,
d.EOOS_SUPPLIER_FULL_NAME 'EOOS_SUPPLIER_FULL_NAME1',
CASE e.EOTS_LINK_TYPE
WHEN '21' THEN
'收货'
WHEN '22' THEN
'配单'
WHEN '23' THEN
'发货'
WHEN '24' THEN
'装机'
WHEN '51' THEN
'提货主单'
WHEN '61' THEN
'提货订单'
WHEN '62' THEN
'货代签收'
WHEN '71' THEN
'落地配交接'
WHEN '72' THEN
'落地配分配'
ELSE
'落地配签收'
END 'EOTS_LINK_TYPE',
min(b.HANDLER_DATE) 'HANDLER_DATE1'
FROM
cs_complained_info t
LEFT JOIN cs_complained_handle_record b ON b. CODE = t.COMPLAIN_CODE
LEFT JOIN eo_order c ON c.EOOR_ORDER_NO = t.ORDER_NO
LEFT JOIN eo_order_supplier d ON d.EOOS_ORDER_NO = t.ORDER_NO
LEFT JOIN eo_order_task_status e ON e.EOOR_ORDER_NO = t.ORDER_NO
WHERE
t.HANDLE_STATUS = "DONE"
AND T.ORDER_NO != " "
AND t.CREATE_TIME < DATE_ADD(CURDATE(),INTERVAL 0 DAY)
GROUP BY
t.COMPLAIN_CODE
) AS A
LEFT JOIN (
SELECT
t.COMPLAIN_CODE 'COMPLAIN_CODE2',
b. HANDLER 'HANDLER2',
max(b.HANDLER_DATE) 'HANDLER_DATE2'
FROM
cs_complained_info t
LEFT JOIN cs_complained_handle_record b ON b. CODE = t.COMPLAIN_CODE
LEFT JOIN eo_order c ON c.EOOR_ORDER_NO = t.ORDER_NO
LEFT JOIN eo_order_supplier d ON d.EOOS_ORDER_NO = t.ORDER_NO
LEFT JOIN eo_order_task_status e ON e.EOOR_ORDER_NO = t.ORDER_NO
WHERE
t.HANDLE_STATUS = "DONE"
AND b.HANDLER_RESULT = "FINISH"
AND T.ORDER_NO != " "
AND t.CREATE_TIME > DATE_SUB(CURDATE(),INTERVAL 40 DAY)
GROUP BY
t.COMPLAIN_CODE
) AS B ON A.COMPLAIN_CODE = B.COMPLAIN_CODE2
ORDER BY
COMPLAIN_CODE DESC
以上是关于SQL 获取数据的主要内容,如果未能解决你的问题,请参考以下文章