• Union all 和 Order by


    如果每个Union 的结果集的排序规则是不一样的

    那么要在结果集 外面套一层 而且内部要用 top 99.9999999 percent

    例如:


     select * from (  select top 99.9999999 percent t0.JPlanNo as JPlanNo,t0.jbillno as JPlanSchedulingBillNo,
    t0.JPlanID as JPlanID,
    t0.JOrderByNo as JPlanOrderByNo,
    tt.id as JProcessBillID,
    tt.BillNO as JProcessBillNo,
    tt.JProcessID as JProcessID,
    t1.name as JProcessName,
    tt.JOperSN as JOperSN,
    tt.JPlanQty as JPlanQty,
    tt.JQty as JQty,
    tt.JEquipmentID as JEquipmentID,
    t2.name as JEquipmentName,
    tt.JProductionCenterID as JProductionCenterID,
    t3.name as JProductionCenterName,
    tt.JRemark as JRemark,
    tt.JPlanStartDate as JPlanStartDate,
    tt.JPlanEndDate as JPlanEndDate,
    tt.JCheckedQty as JCheckedQty,
    tt.JUnCheckedQty as JUnCheckedQty,
    tt.JDisPatchQty as JDisPatchQty,
    tt.JDeliveryDate as JDeliveryDate,
    tt.JSugDeliveryDate as JSugDeliveryDate,
    tt.JLPBMaterialID as JLPBMaterialID,
    t4.Name as JLPBMaterialName ,
    t4.JStandard as JStandard,
    t4.JModel as JModel,
    t5.id as JProcessBillSchedulingID
    from JL_M_ProcessBill tt
    inner join JPlanScheduling t0 on t0.JPlanID = tt.JLMProductionPlanID
    inner join JL_PM_PRM_Process t1 on tt.JProcessID = t1.id
    inner join JL_P_B_Equipment t2 on t2.id = tt.JEquipmentID
    left join JL_ProductionCenter t3 on t3.id = tt.JProductionCenterID
    left join JL_P_B_Material t4 on t4.id = tt.JLPBMaterialID
    left join JProcessBillScheduling t5 on t5.JProcessBillID = tt.id
    where t1.id = 32
    order by tt.JPlanQty , tt.JOperSN , t0.JOrderByNo
           ) t3               
        union all  
    select * from (  select top 99.9999999 percent t0.JPlanNo as JPlanNo,t0.jbillno as JPlanSchedulingBillNo,
    t0.JPlanID as JPlanID,
    t0.JOrderByNo as JPlanOrderByNo,
    tt.id as JProcessBillID,
    tt.BillNO as JProcessBillNo,
    tt.JProcessID as JProcessID,
    t1.name as JProcessName,
    tt.JOperSN as JOperSN,
    tt.JPlanQty as JPlanQty,
    tt.JQty as JQty,
    tt.JEquipmentID as JEquipmentID,
    t2.name as JEquipmentName,
    tt.JProductionCenterID as JProductionCenterID,
    t3.name as JProductionCenterName,
    tt.JRemark as JRemark,
    tt.JPlanStartDate as JPlanStartDate,
    tt.JPlanEndDate as JPlanEndDate,
    tt.JCheckedQty as JCheckedQty,
    tt.JUnCheckedQty as JUnCheckedQty,
    tt.JDisPatchQty as JDisPatchQty,
    tt.JDeliveryDate as JDeliveryDate,
    tt.JSugDeliveryDate as JSugDeliveryDate,
    tt.JLPBMaterialID as JLPBMaterialID,
    t4.Name as JLPBMaterialName ,
    t4.JStandard as JStandard,
    t4.JModel as JModel,
    t5.id as JProcessBillSchedulingID
    from JL_M_ProcessBill tt
    inner join JPlanScheduling t0 on t0.JPlanID = tt.JLMProductionPlanID
    inner join JL_PM_PRM_Process t1 on tt.JProcessID = t1.id
    inner join JL_P_B_Equipment t2 on t2.id = tt.JEquipmentID
    left join JL_ProductionCenter t3 on t3.id = tt.JProductionCenterID
    left join JL_P_B_Material t4 on t4.id = tt.JLPBMaterialID
    left join JProcessBillScheduling t5 on t5.JProcessBillID = tt.id
    where t1.id = 39
    order by tt.JPlanEndDate , t0.JOrderByNo
           ) t4  

  • 相关阅读:
    去除字符串中的重复字符
    .net生成的类,跨工程调用显示注释
    Flex 页面空白或Error #2032: 流错误处理办法
    读取点阵字库
    SQL多表联合查询(Access数据库表)
    MSComm不能触发MSComm1_OnComm()事件原因之一
    一个小时内学习SQLite数据库(转)
    人生无悔
    学习之道
    挺经
  • 原文地址:https://www.cnblogs.com/YyuTtian/p/4560977.html
Copyright © 2020-2023  润新知