SELECT a.TradeOrderID 二段交易号 ,
c.TradeOrderID 一段订单号 ,
a.BaggingDate AS 出库时间 ,
a.TransportOrderCode AS 转运单号 ,
a.TransportOrderCodeEx AS 外部单号 ,
a.Country AS 目的地 ,
b.LogisticsName AS 渠道 ,
dbo.Fun_GetTransportOrderStatus(a.StatusFlag) AS 状态 ,
a.CreateTime AS 生成时间 ,
a.WaitDomesticOffShel AS 货物已全部上架 ,
a.CoboxTime AS 合箱称重 ,
a.CoboxTime AS 打印面单 ,
BaggingDate AS 装袋扫描 ,
( SELECT TOP 1
BatchNo
FROM dbo.TWX_ScanLogisticsTransfer WITH ( NOLOCK )
WHERE LogisticsTransferBoardID IN (
SELECT LogisticsTransferBoardID
FROM dbo.TWX_LogisticsTransferDtl WITH ( NOLOCK )
WHERE LogisticsTransferDtlID = a.LogisticsTransferDtlID )
) AS 装车批次 ,
( SELECT TOP 1
temp.CreateTime
FROM ( SELECT Descriptions ,
CreateTime
FROM dbo.Log_OrderLog l WITH ( NOLOCK )
WHERE l.RelateID = a.TransportOrderID
AND l.RelateType = 1
) temp
WHERE temp.Descriptions = '装车扫描'
) AS 装车时间 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode = 'CC_O_SUCCESS_01'
) AS 出口清关完成 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode = 'CC_O_SUCCESS_02'
) AS 离开起运港 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode IN ( 'CAI_CUSTOMS_CLR_SUC_00',
'CAI_CUSTOMS_CLR_SUC_01' )
) AS 抵达目的港 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode IN ( 'OTMS_SENT_CITY_01' )
) AS 目的地清关时间 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode IN ( 'OTMS_DLV_ATTEMPT' )
) AS 首次派送时间 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode IN ( 'OTMS_SIGN_02' )
) AS 门店上架时间 ,
( SELECT TOP 1
TrackTime
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
AND t.TrackCode IN ( 'CAI_SIGN_IN' )
) AS 签收时间 ,
( SELECT TOP 1
Descriptions
FROM dbo.Log_TransportOrderTrack t WITH ( NOLOCK )
WHERE t.TransportOrderID = a.TransportOrderID
ORDER BY t.TrackTime DESC
) AS 最新轨迹
FROM dbo.TWX_TransportOrder a WITH ( NOLOCK )
JOIN dbo.TWX_TransportFromMst c WITH ( NOLOCK ) ON c.TransportOrderID = a.TransportOrderID
LEFT JOIN dbo.Sys_LogisticsCompany b WITH ( NOLOCK ) ON a.InterDeliveryID = b.LogisticsID
WHERE a.TransportOrderID <> 0
AND a.TradeOrderID IN ()

嵌套的SQL另外一种写法的更多相关文章

  1. 在Oracle中执行动态SQL的几种方法

    转载:在Oracle中执行动态SQL的几种方法 以下为内容留存: 在Oracle中执行动态SQL的几种方法 在一般的sql操作中,sql语句基本上都是固定的,如:SELECT t.empno,t.en ...

  2. sql语句有几种写法

    sql语句有几种写法 1:SELECT * FROM tablename ORDER BY RAND() LIMIT 想要获取的数据条数: 2:SELECT *FROM `table` WHERE i ...

  3. sql for xml 还有一种写法(採用 tag 与 union all,简洁易懂)

    sql for xml 还有一种写法(採用 tag 与 union all,简洁易懂) 測试环境:sql 08, 08 R2, 2010,  2012, 2014 等 declare @agent t ...

  4. Sql语句模糊查询字符串的两种写法

    Sql语句模糊查询有两种写法,一种是在jdbcTemplate的查询方法参数里拼接字符串%,一种是在Sql语句里拼接%字符串. public class IsNameDaoImpl implement ...

  5. ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法

    ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法 语法 第一种: 通过使用Oracle语句块  --指定文档所有部门都能查看 declare cursor TABLE_DEPT and ...

  6. EF架构~linq模拟left join的两种写法,性能差之千里!

    回到目录 对于SQL左外连接我想没什么可说的,left join将左表数据都获出来,右表数据如果在左表中不存在,结果为NULL,而对于LINQ来说,要实现left join的效果,也是可以的,在进行j ...

  7. oracle if/else功能的实现的3种写法

    转载:oracle中if/else功能的实现的3种写法 以下是内容留存: 1.标准sql规范 一.单个IF . if a=... then ......... end if; . if a=... t ...

  8. 关于MyBatis的两种写法

    刚接触MyBatis是在Jike的视频中学习的,但是之后又发现和项目中的MyBatis的用法不太一致.上网找了好多资料,发现网上的教程分为两种写法: 第一种,是jike视频中的写法,写好map.xml ...

  9. 茴香豆的“茴”有四种写法,Python的格式化字符串也有

    茴香豆的"茴"有四种写法,Python的格式化字符串也有 茴香豆的"茴"有四种写法,Python的格式化字符串也有 被低估的断言 多一个逗号,少一点糟心事 上下 ...

随机推荐

  1. 【BZOJ4560】[JLoi2016]字符串覆盖 KMP+状压DP

    [BZOJ4560][JLoi2016]字符串覆盖 Description 字符串A有N个子串B1,B2,…,Bn.如果将这n个子串分别放在恰好一个它在A中出现的位置上(子串之间可以重叠)这样A中的若 ...

  2. 巨蟒python全栈开发数据库前端3:CSS基础2

    1.文本属性 2.背景属性 3.边框属性 4.display属性 5.盒子模型

  3. 数据库操作(使用FMDB)

    iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB.PlausibleDatabase.sqlitepers ...

  4. iOS 数组containsObject:方法

    今年上半年打算巩固一下基础知识,将工作和学习中遇到的疑惑尽量搞清楚原理.作为一个菜鸟级别的程序员,我深深的体会到算法和基础的重要性,如果说算法是内功,那么基础就是下盘,只有下盘稳住了,上面才不会轻易倒 ...

  5. 原!!mysql,几十万条数据中随机抽取1万以内的数据

    想了几种方法: 1.将所有符合条件的对象集合都查出来,在代码里做随机. 2.先查出所有符合条件的id,再代码随机需要抽查数量的id,再 到数据库 中 in. 3.利用order by rand() l ...

  6. tornado web应用程序结构

    tornado web 应用程序通常包含一个或者多个RequestHandler 子类,一个Application 对象来为每个控制器路由到达的请求和一个mian()函数 import tornado ...

  7. 【算法题12 解码方法decode way】

    1.来源LeetCode91 一条包含字母 A-Z 的消息通过以下方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 给定一个只包含数字的非空字符串,请 ...

  8. appium 自动化测试案例

    原文地址http://www.cnblogs.com/tobecrazy/p/4579631.html 原文地址http://www.cnblogs.com/tobecrazy/ 该博主有很多干货,可 ...

  9. Django总结及Form组件

    一.model常用操作 1.13个API查询:all,filter,get ,values,values_list,distinct,order_by ,reverse , exclude(排除),c ...

  10. Django基础(ORM)

    数据库与ORM 数据库的配置 1    django默认支持sqlite,mysql, oracle,postgresql数据库.  <1> sqlite django默认使用sqlite ...