在我的 SQL 视图中创建一个新列 - 该列必须是其他两个列的组合
Create a new column in my SQL View - Column must be two other columns combined
我正在尝试创建一个新视图,但我也希望此视图有一个新列。新列必须是 StkCode 和 Description_1 组合。
例如:如果我的StkCode是DX11122,Description_1是香草粉;我想要一个如下所示的字段:"Vanilla Powder - DX11122"
CREATE VIEW KFF_Rep_Comm
AS
SELECT vw_KLX_RepCommTrx.AccName AS AccountName
,vw_KLX_RepCommTrx.Account AS AccountNum
,vw_KLX_RepCommTrx.RepID
,vw_KLX_RepCommTrx.RepName
,vw_KLX_RepCommTrx.CommPerc AS CommPercent
,vw_KLX_RepCommTrx.Credit
,vw_KLX_RepCommTrx.Debit
,vw_KLX_RepCommTrx.MUPercent AS MarkUpPercent
,vw_KLX_RepCommTrx.ProfitPercent AS GrossProfitPercent
,vw_KLX_RepCommTrx.SgdTrxAmt AS InvValue
,vw_KLX_RepCommTrx.SgdCost AS Cost
,vw_KLX_RepCommTrx.SgdProfit AS GrossProfit
,vw_KLX_RepCommTrx.SgdQty AS QtySold_Kg
,vw_KLX_RepCommTrx.TxDate
,vw_KLX_RepCommTrx.TrCodeID
,vw_KLX_RepCommTrx.StkCode
,vw_KLX_RepCommTrx.RepCode
,vw_KLX_RepCommTrx.Reference
,Client.DCLink
,StkItem.StockLink
FROM Client
INNER JOIN vw_KLX_RepCommTrx
ON vw_KLX_RepCommTrx.AccName = Client.Name
INNER JOIN StkItem
ON StkItem.Code = vw_KLX_RepCommTrx.StkCode
ADD ItemAndCode VARCHAR
Update vw_KLX_RepCommTrx
SET ItemAndCode Concat(StkCode, ' - ',Description_1) ---HERE is where I am going wrong, I think?
您只需在 select 中添加另一列:
CREATE VIEW KFF_Rep_Comm
AS
SELECT vw_KLX_RepCommTrx.AccName AS AccountName
,vw_KLX_RepCommTrx.Account AS AccountNum
,vw_KLX_RepCommTrx.RepID
,vw_KLX_RepCommTrx.RepName
,vw_KLX_RepCommTrx.CommPerc AS CommPercent
,vw_KLX_RepCommTrx.Credit
,vw_KLX_RepCommTrx.Debit
,vw_KLX_RepCommTrx.MUPercent AS MarkUpPercent
,vw_KLX_RepCommTrx.ProfitPercent AS GrossProfitPercent
,vw_KLX_RepCommTrx.SgdTrxAmt AS InvValue
,vw_KLX_RepCommTrx.SgdCost AS Cost
,vw_KLX_RepCommTrx.SgdProfit AS GrossProfit
,vw_KLX_RepCommTrx.SgdQty AS QtySold_Kg
,vw_KLX_RepCommTrx.TxDate
,vw_KLX_RepCommTrx.TrCodeID
,vw_KLX_RepCommTrx.StkCode
,vw_KLX_RepCommTrx.RepCode
,vw_KLX_RepCommTrx.Reference
,Client.DCLink
,StkItem.StockLink
,Concat(vw_KLX_RepCommTrx.StkCode, ' - ',vw_KLX_RepCommTrx.Description_1) as ItemAndCode
FROM Client
INNER JOIN vw_KLX_RepCommTrx
ON vw_KLX_RepCommTrx.AccName = Client.Name
INNER JOIN StkItem
ON StkItem.Code = vw_KLX_RepCommTrx.StkCode
从您的代码中不清楚第 Description_1
列来自何处,但我认为它是相同的视图 vw_KLX_RepCommTrx
。如果不是 - 您可以使用实际的 table/view 名称更新它(如果列名称是唯一的,则删除 table/view 名称)
我正在尝试创建一个新视图,但我也希望此视图有一个新列。新列必须是 StkCode 和 Description_1 组合。
例如:如果我的StkCode是DX11122,Description_1是香草粉;我想要一个如下所示的字段:"Vanilla Powder - DX11122"
CREATE VIEW KFF_Rep_Comm
AS
SELECT vw_KLX_RepCommTrx.AccName AS AccountName
,vw_KLX_RepCommTrx.Account AS AccountNum
,vw_KLX_RepCommTrx.RepID
,vw_KLX_RepCommTrx.RepName
,vw_KLX_RepCommTrx.CommPerc AS CommPercent
,vw_KLX_RepCommTrx.Credit
,vw_KLX_RepCommTrx.Debit
,vw_KLX_RepCommTrx.MUPercent AS MarkUpPercent
,vw_KLX_RepCommTrx.ProfitPercent AS GrossProfitPercent
,vw_KLX_RepCommTrx.SgdTrxAmt AS InvValue
,vw_KLX_RepCommTrx.SgdCost AS Cost
,vw_KLX_RepCommTrx.SgdProfit AS GrossProfit
,vw_KLX_RepCommTrx.SgdQty AS QtySold_Kg
,vw_KLX_RepCommTrx.TxDate
,vw_KLX_RepCommTrx.TrCodeID
,vw_KLX_RepCommTrx.StkCode
,vw_KLX_RepCommTrx.RepCode
,vw_KLX_RepCommTrx.Reference
,Client.DCLink
,StkItem.StockLink
FROM Client
INNER JOIN vw_KLX_RepCommTrx
ON vw_KLX_RepCommTrx.AccName = Client.Name
INNER JOIN StkItem
ON StkItem.Code = vw_KLX_RepCommTrx.StkCode
ADD ItemAndCode VARCHAR
Update vw_KLX_RepCommTrx
SET ItemAndCode Concat(StkCode, ' - ',Description_1) ---HERE is where I am going wrong, I think?
您只需在 select 中添加另一列:
CREATE VIEW KFF_Rep_Comm
AS
SELECT vw_KLX_RepCommTrx.AccName AS AccountName
,vw_KLX_RepCommTrx.Account AS AccountNum
,vw_KLX_RepCommTrx.RepID
,vw_KLX_RepCommTrx.RepName
,vw_KLX_RepCommTrx.CommPerc AS CommPercent
,vw_KLX_RepCommTrx.Credit
,vw_KLX_RepCommTrx.Debit
,vw_KLX_RepCommTrx.MUPercent AS MarkUpPercent
,vw_KLX_RepCommTrx.ProfitPercent AS GrossProfitPercent
,vw_KLX_RepCommTrx.SgdTrxAmt AS InvValue
,vw_KLX_RepCommTrx.SgdCost AS Cost
,vw_KLX_RepCommTrx.SgdProfit AS GrossProfit
,vw_KLX_RepCommTrx.SgdQty AS QtySold_Kg
,vw_KLX_RepCommTrx.TxDate
,vw_KLX_RepCommTrx.TrCodeID
,vw_KLX_RepCommTrx.StkCode
,vw_KLX_RepCommTrx.RepCode
,vw_KLX_RepCommTrx.Reference
,Client.DCLink
,StkItem.StockLink
,Concat(vw_KLX_RepCommTrx.StkCode, ' - ',vw_KLX_RepCommTrx.Description_1) as ItemAndCode
FROM Client
INNER JOIN vw_KLX_RepCommTrx
ON vw_KLX_RepCommTrx.AccName = Client.Name
INNER JOIN StkItem
ON StkItem.Code = vw_KLX_RepCommTrx.StkCode
从您的代码中不清楚第 Description_1
列来自何处,但我认为它是相同的视图 vw_KLX_RepCommTrx
。如果不是 - 您可以使用实际的 table/view 名称更新它(如果列名称是唯一的,则删除 table/view 名称)