需要 sql 查询这种格式

need the sql query this format

我有一个这样的 sql 查询:

select  T2.ItemCode,
        T2.ItemName,
        T1.Quantity,
        T2.InvntryUom,
        T1.Price  
from opor T0 
inner join por1 T1 on T1.DocEntry = T0.DocEntry 
inner join OITM T2 on T2.ItemCode = T1.ItemCode  
where T1.ItemCode = 'V0724-0158' 
and month(T0.DocDueDate) in ( 4,5, 6) and year(T0.DocDueDate) = '2016'

输出是这样的:

ItemCode             ItemName                                                                                             Quantity                                InvntryUom                                                                                           Price
-------------------- ---------------------------------------------------------------------------------------------------- --------------------------------------- ---------------------------------------------------------------------------------------------------- ---------------------------------------
V0724-0158           SIS'88 80326 Brown Sugar 1kg Bag (Arabic) SBRADK124C - PET12/LLDPE60, 410mm x 1000m x 8-9C           29.000000                               Roll                                                                                                 232.390000
V0724-0158           SIS'88 80326 Brown Sugar 1kg Bag (Arabic) SBRADK124C - PET12/LLDPE60, 410mm x 1000m x 8-9C           29.000000                               Roll                                                                                                 232.390000
V0724-0158           SIS'88 80326 Brown Sugar 1kg Bag (Arabic) SBRADK124C - PET12/LLDPE60, 410mm x 1000m x 8-9C           10.000000                               Roll                                                                                                 234.740000

我有另一个比较查询:

SELECT '2015' as year, 
       T0.ItemCode as 'Item Code', 
       T1.Price As 'Base Price', 
       T2.Amount As 'Box qty', 
       T2.Price As 'Box Price'
FROM OITM T0 
Inner Join SPP1 T1 on T0.ItemCode=T1.ItemCode
Inner Join SPP2 T2 on T0.ItemCode=T2.ItemCode And T1.LINENUM=T2.SPP1LNum
Where T0.ItemCode ='V0724-0158' 
and FromDate ='20150101' 
and ToDate ='20160315'

输出是这样的:

year Item Code            Base Price                              Box qty                                 Box Price
---- -------------------- --------------------------------------- --------------------------------------- ---------------------------------------
2015 V0724-0158           242.000000                              16.000000                               242.000000
2015 V0724-0158           242.000000                              25.000000                               239.580000
2015 V0724-0158           242.000000                              50.000000                               235.000000
2015 V0724-0158           242.000000                              100.000000                              230.000000

在第一个查询中,数量列应该与第二个查询的箱子数量进行比较,下面是与第二个查询检查的条件

for eg: if quantity is 10 the box price is 242 
        if quantity is 29 the box price is 239.58 

示例输出结果将是这样的,带有名为 box price 的 tan 额外列:

ItemCode             ItemName                                                                                             Quantity                                InvntryUom                                                                                           Price                                   Box Price
-------------------- ---------------------------------------------------------------------------------------------------- --------------------------------------- ---------------------------------------------------------------------------------------------------- ----------------------------------------------------
V0724-0158           SIS'88 80326 Brown Sugar 1kg Bag (Arabic) SBRADK124C - PET12/LLDPE60, 410mm x 1000m x 8-9C           29.000000                               Roll                                                                                                 232.390000                             239.58
V0724-0158           SIS'88 80326 Brown Sugar 1kg Bag (Arabic) SBRADK124C - PET12/LLDPE60, 410mm x 1000m x 8-9C           29.000000                               Roll                                                                                                 232.390000                             239.58
V0724-0158           SIS'88 80326 Brown Sugar 1kg Bag (Arabic) SBRADK124C - PET12/LLDPE60, 410mm x 1000m x 8-9C           10.000000                               Roll                                                                                                 234.740000                             242

请问能否在sql查询中实现,如果可以,请问如何实现。

我不太确定数量和价格之间有什么逻辑关系,但是你可以通过以下方式添加条件:

select 
    T2.ItemCode,
    T2.ItemName,
    T1.Quantity,
    T2.InvntryUom,
    T1.Price,
    case T1.Quantity
        when 10 then 242
        when 29 then 239.58
        else 'unknown'
    end
from 
    opor T0
inner join por1 T1 on T1.DocEntry = T0.DocEntry
inner join OITM T2 on T2.ItemCode = T1.ItemCode
where
    T1.ItemCode = 'V0724-0158'
and month(T0.DocDueDate) in (4,5,6)
and year(T0.DocDueDate) = '2016'