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. 慎用System.Web.HttpContext.Current

    每当控制流离开页面派生的Web表单上的代码的时候,HttpContext类的静态属性Current可能是有用的. 使用这个属性,我们可以获取当前请求(Request),响应(Response),会话( ...

  2. Dart基础学习01--走近Dart

    什么是Dart 在Dart的官网上是这样介绍Dart的: Dart is an open-source, scalable programming language, with robust libr ...

  3. mybatis循环map

    一.循环key <foreach collection="map.keys" item="key" separator="and"&g ...

  4. 棣小天儿的第一个python程序

    根据给定的年月日,以数字形式打印出日期 months = [ 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'Augu ...

  5. JDK源代码学习系列05----LinkedList

                                             JDK源代码学习系列05----LinkedList 1.LinkedList简单介绍 LinkedList是基于双向 ...

  6. xxxservlet继承HttpServlet类

    "HttpServlet类被定义为抽象类,但是源码里面没有抽象方法.所以没有一定要求实现的方法.之所以定义为抽象类,是因为他继承了GenericServlet这个抽象类.并没有全部实现里面的 ...

  7. Angular学习笔记—RxJS与Observable(转载)

    1. Observable与观察者模式的关系 其实这里讲的Observable就是一种观察者模式,只不过RxJS把Observable结合了迭代模式以及附件了很多的operator,让他变得很强大,也 ...

  8. mysql中变量的定义

    mysql中的变量定义 mysql的变量分为系统变量和用户变量,mysql系统定义的变量是系统变量,用户自己定义的变量为用户变量.对于系统变量,用户只能够改变它的值不能够创建新的系统变量.对于用户变量 ...

  9. django重写用户模型

    重写一个UserProfile继承自带的AbstractUser # -*- coding: utf-8 -*- from __future__ import unicode_literals fro ...

  10. C# 创建单例你会几种方式?

    关于为什么需要创建单例?这里不过多介绍,具体百度知. 关于C#  创建单例步骤或条件吧 1.声明静态变量:2.私有构造函数(无法实例化)3.静态创建实例的方法:至于我这里的Singleton是seal ...