1、不同类别可用case进行判断;
2、需要计算的字段,你在select的时候就可以进行计算,不要一取数据就用select * 什么的,只把你需要的字段取出就可以了。

解决方案 »

  1.   

    select (select para2 from table1 b where b.id = a.id and <条件1>) as 项目2,
    (select para2 from table1 b where b.id = a.id and <条件2>) as 项目3
    from table1 a
      

  2.   

    我得是下面这样的
    SELECT rtrim(dbo.CarRepairBill.Dep) as  车辆线路, rtrim(dbo.CarRepairBill.CarNo)  as 车辆编号
    FROM dbo.CarRepairContent INNER JOIN
          dbo.CarRepairBill ON 
          dbo.CarRepairContent.[NO] = dbo.CarRepairBill.[NO] INNER JOIN
          dbo.t_CarBaseInfo ON 
          dbo.CarRepairBill.CarNo = dbo.t_CarBaseInfo.RegistrationMark INNER JOIN
          dbo.CarRecord ON dbo.CarRepairBill.Dep = dbo.CarRecord.LineName AND 
          dbo.CarRepairBill.CarNo = dbo.CarRecord.CarNo INNER JOIN
          dbo.CarTypeStandardPlan ON 
          dbo.t_CarBaseInfo.FactoryType = dbo.CarTypeStandardPlan.CarType AND 
          dbo.CarRepairBill.Dep = dbo.CarTypeStandardPlan.LineName
    where  CarRepairBill.Outmendtime between   @StartTime  and  @EndTime