簡體   English   中英

嘗試將MS Access查詢轉換為SQL Server視圖但出現錯誤

[英]Trying to convert MS Access query to SQL Server view but getting error

很難為我手動轉換此代碼。

SELECT 
    Birlesmis_Data_Urun.[Kampanya Adı], DepolarTbl.[BM Adı], 
    DepolarTbl.[Müşteri Adı], DepolarTbl.[BM Adı], 
    Birlesmis_Data_Urun.KOD, Birlesmis_Data_Urun.[DEPO ADI], 
    Birlesmis_Data_Urun.[ECZANE GLN KODU], 
    Birlesmis_Data_Urun.[ECZANE ADI], 
    Birlesmis_Data_Urun.[Düzeltilmiş Ürün Adı] AS [Ürün Adı], 
    Birlesmis_Data_Urun.[SATIŞ ADET], 
    IIf(IsNull([KampanyaDetayTbl].[KMMF]), IIf(IsNull([KampanyaDetayTbl]![BMMF]), [Birlesmis_Data_Urun].[MF ADET], [KampanyaDetayTbl]![BMMF]),[KampanyaDetayTbl]![KMMF]) AS SonucMF, 
    Birlesmis_Data_Urun.[MF ADET] AS [Istenen MF], 
    IIf([SonucMF]=[Istenen MF],"Yok","Var") AS Duzenleme, 
    [Fiyat] * ([Istenen MF] - [SonucMF]) AS Tutar
FROM 
    ((Birlesmis_Data_Urun 
LEFT JOIN 
    KampanyaDetayTbl ON Birlesmis_Data_Urun.ID = KampanyaDetayTbl.MFID)  
INNER JOIN 
    DepolarTbl ON Birlesmis_Data_Urun.KOD = DepolarTbl.KOD) 
LEFT JOIN 
    UrunFiyatTbl ON (Birlesmis_Data_Urun.[Düzeltilmiş Ürün Adı] = UrunFiyatTbl.UrunAdi) AND (Birlesmis_Data_Urun.[Kampanya Adı] = UrunFiyatTbl.KampanyaAdi);

我所做的事情:

  1. 更換! .
  2. IsNull替換為= ' '例如IIf(IsNull([KampanyaDetayTbl]![BMMF]),) -> IIf([KampanyaDetayTbl].[BMMF]=' ',)
  3. "替換為'
  4. 刪除;

我得到這個錯誤

消息207,第16級,狀態1,第1行
無效的列名“ SonucMF”。
消息207,第16級,狀態1,第1行
無效的列名“ Istenen MF”。
消息207,第16級,狀態1,第1行
無效的列名“ Istenen MF”。
消息207,第16級,狀態1,第1行
無效的列名“ SonucMF”。

如何將該查詢轉換為SQL Server視圖?

好的,我使用[tablename]。[columnname]更改了引用別名,並且可以使用。

iif ( condition, value_if_true, value_if_false )替換為

Case when condition then value_if_true else value_if_false end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM