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 获取数据的主要内容,如果未能解决你的问题,请参考以下文章

sql 获取分组第一行数据

sql获取这个月与上个月的数据(加分)

如何获取Oracle数据库中sql语句的执行时间

delphi SQL 怎样获取返回数据中某条记录

sql语句获取表中最新数据

sql中如何获取当天时间的零点