这是新列名称的MS Access查询 - SonucMF:
IIf(IsNull([KampanyaDetayTbl].[KMMF]);IIf(IsNull([KampanyaDetayTbl]![BMMF]);[Birlesmis_Data_Urun].[MF ADET];[KampanyaDetayTbl]![BMMF]);[KampanyaDetayTbl]![KMMF])
我试图将此查询转换为MS SQL视图:
IIf(IsNull([KampanyaDetayTbl].[KMMF],0),IIf(IsNull([KampanyaDetayTbl].[BMMF],0),[Birlesmis_Data_Urun].[MF ADET],[KampanyaDetayTbl].[BMMF]),[KampanyaDetayTbl].[KMMF])
我得到"表达无效或缺失"错误。
编辑:这是完整的查询;
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);
答案 0 :(得分:1)
我可以看到三个问题:
尝试:
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([KampanyaDetayTbl].[KMMF] is null, IIf([KampanyaDetayTbl].[BMMF] is null, [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);