首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >赋值insde语句- Server

赋值insde语句- Server
EN

Stack Overflow用户
提问于 2018-03-15 16:25:00
回答 3查看 59关注 0票数 0

我试图在类似的sql语句中分配默认值。

代码语言:javascript
运行
复制
SELECT (CASE WHEN sd.IID IS NULL THEN 0 ELSE sd.IID END) AS IID, 
    pd.IID AS PurchaseOrerDetailsId, 
    i.[Description] AS Item, 
    sd.BatchNo, s.[Description] AS Unit,        
    CONVERT(varchar, sd.MfgDt, 103) AS MfgDt,
    sd.Qty = 0,
    CONVERT(varchar, sd.ExpiryDate, 103) AS ExpiryDate,
    sd.PackSize ='',
    pd.Qty = 0 AS QtyOrdered,
    sd.MRP, sd.PTR,
    sd.PurchaseRate,
    sd.PTS,
    sd.CGST,
    sd.SGST,
    sd.IGST,
    DiscPer,
    DiscVal,
    sd.Qty * sd.PurchaseRate AS PurchaseValue,
   (sd.Qty * sd.PurchaseRate * sd.CGST)/100 AS CGSTAmt,
   (sd.Qty * sd.PurchaseRate * sd.SGST)/100 AS SGSTAmt,
   (sd.Qty * sd.PurchaseRate * sd.IGST)/100 AS IGSTAmt,
    i.IID AS ItemId
FROM PurchaseOrderDetails pd

但是您可以看到"Qty = 0“或PackSize =‘can SELECT语句不起作用。如何在SELECT语句中为多个字段赋值。

谢谢帕莎

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-03-15 16:32:46

你是在找这样的东西吗?

代码语言:javascript
运行
复制
SELECT 
(CASE WHEN sd.IID IS NULL THEN 0 ELSE sd.IID END) AS IID, 
pd.IID AS PurchaseOrerDetailsId, 
i.[Description] AS Item, 
sd.BatchNo, 
s.[Description] AS Unit, 
CONVERT(varchar, sd.MfgDt, 103) AS MfgDt, 
'0' AS sd.Qty, 
CONVERT(varchar, sd.ExpiryDate, 103) AS ExpiryDate, 
'' AS sd.PackSize, 
pd.Qty = 0 AS QtyOrdered, 
sd.MRP,
sd.PTR, 
sd.PurchaseRate, sd.PTS, sd.CGST, sd.SGST, sd.IGST, DiscPer, DiscVal, sd.Qty * sd.PurchaseRate AS PurchaseValue, (sd.Qty * sd.PurchaseRate * sd.CGST)/100 AS CGSTAmt, 
(sd.Qty * sd.PurchaseRate * sd.SGST)/100 AS SGSTAmt, (sd.Qty * sd.PurchaseRate * sd.IGST)/100 AS IGSTAmt, i.IID AS ItemId
            FROM PurchaseOrderDetails pd

不过,不确定QtyOrdered列

票数 0
EN

Stack Overflow用户

发布于 2018-03-15 16:35:10

引用我之前的评论..。为什么不只是用这个?

代码语言:javascript
运行
复制
ISNULL(Qty,0)
票数 0
EN

Stack Overflow用户

发布于 2018-03-15 16:41:07

试试这个:

代码语言:javascript
运行
复制
SELECT COALESCE(sd.IID,0) AS IID, 
    pd.IID AS PurchaseOrerDetailsId, i.[Description] AS Item, 
    sd.BatchNo, s.[Description] AS Unit,        
    CONVERT(varchar, sd.MfgDt, 103) AS MfgDt,
    COALESCE(sd.Qty,0) As Qty,
    CONVERT(varchar, sd.ExpiryDate, 103) AS ExpiryDate,
    COALESCE(sd.PackSize,'') As PackSize,
    COALESCE(pd.Qty,0) AS QtyOrdered,
    sd.MRP, sd.PTR, sd.PurchaseRate,
    sd.PTS, sd.CGST, sd.SGST, sd.IGST, 
    DiscPer, DiscVal,
    COALESCE(sd.Qty,0) * sd.PurchaseRate AS PurchaseValue,
   (COALESCE(sd.Qty,0) * sd.PurchaseRate * sd.CGST)/100 AS CGSTAmt,
   (COALESCE(sd.Qty,0) * sd.PurchaseRate * sd.SGST)/100 AS SGSTAmt,
   (COALESCE(sd.Qty,0) * sd.PurchaseRate * sd.IGST)/100 AS IGSTAmt,
    i.IID AS ItemId
FROM PurchaseOrderDetails pd
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49304537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档