错误的querry [英] error querry
问题描述
你好,我想知道这个问题出了什么问题它告诉我一个错误,告诉错误的语法接近=在行
hello , please i want to khnow what is wrong with this querry it show me an error telling incorrect syntax near = in line
" ;然后[频道类型ID] = 3"
此处我的烦恼
here my querry
with
pdt
as (
SELECT cast ( [GMID]
as nvarchar ( 50 ))
as GMID
pdt as ( SELECT cast([GMID] as nvarchar(50)) as GMID
< span style ="color:grey">, cast ( [ANNEE]
as 整数
) as annee
,cast([ANNEE] as integer ) as annee
, mois_chiffre
, mois
, mois_chiffre , mois
, [机构AO]
,[Institution AO]
, [零售AO]
FROM [SANOFI_SANA] 。 [ dbo] 。 [ODS PRODUIT AO]
) ,
FROM [SANOFI_SANA].[dbo].[ODS PRODUIT AO] ) ,
inv
as (
inv as (
SELECT [INVOICE_LINE_ITEM_ID]
, [INVOICE_ID]
,[INVOICE_ID]
, [CUSTOMER_ORDER_LINE_ITEM_ID]
,[CUSTOMER_ORDER_LINE_ITEM_ID]
, [GMID]
,[GMID]
, [CHANNEL_TYPE_ID]
,[CHANNEL_TYPE_ID]
, year ( [INVOICE_CREATION_DATE] )
as annee ,
month ( [INVOICE_CREATION_DATE] )
mois
,year([INVOICE_CREATION_DATE]) as annee , month([INVOICE_CREATION_DATE]) as mois
来自 [SANOFI_SANA] 。 [ dbo] 。 [DWH_CUSTOMER_INVOICE_LINE_ITEM]
from [SANOFI_SANA].[dbo].[DWH_CUSTOMER_INVOICE_LINE_ITEM]
选择
case
何时
case when
[CHANNEL_TYPE_ID] = 4
和
[CHANNEL_TYPE_ID]= 4 and
[Institution AO] =
'1'
[Institution AO]= '1'
然后 inv 。 [CHANNEL_TYPE_ID]
= 3
then inv.[CHANNEL_TYPE_ID] = 3
何时 [CHANNEL_TYPE_ID] = 1
和 [Retail AO] =
'1' 然后 [CHANNEL_TYPE] = 2
else [CHANNEL_TYPE_ID]
end as test
when [CHANNEL_TYPE_ID]= 1 and [Retail AO]= '1' then [CHANNEL_TYPE]= 2 else [CHANNEL_TYPE_ID] end as test
来自 inv
from inv
inner
join pdt
inner join pdt
on inv 。 GMID
= pdt 。 [GMID]
和 inv 。 annee = pdt 。 [ANNEE]
和 inv 。 mois = pdt 。 mois_chiffre
on inv.GMID = pdt.[GMID] and inv.annee= pdt.[ANNEE] and inv.mois= pdt.mois_chiffre
谢谢
推荐答案
有一个缺失的大括号)
there's a missing close braces )
即喜欢
with
pdt as ( SELECT cast([GMID] as nvarchar(50)) as GMID
,cast([ANNEE] as integer ) as annee
, mois_chiffre , mois
,[Institution AO]
,[Retail AO]
FROM [SANOFI_SANA].[dbo].[ODS PRODUIT AO] ) ,
inv as (
SELECT [INVOICE_LINE_ITEM_ID]
,[INVOICE_ID]
,[CUSTOMER_ORDER_LINE_ITEM_ID]
,[GMID]
,[CHANNEL_TYPE_ID]
,year([INVOICE_CREATION_DATE]) as annee , month([INVOICE_CREATION_DATE]) as mois
from [SANOFI_SANA].[dbo].[DWH_CUSTOMER_INVOICE_LINE_ITEM]
)
select
case when
[CHANNEL_TYPE_ID]= 4 and
[Institution AO]= '1'
then inv.[CHANNEL_TYPE_ID] = 3
when [CHANNEL_TYPE_ID]= 1 and [Retail AO]= '1' then [CHANNEL_TYPE]= 2 else [CHANNEL_TYPE_ID] end as test
from inv
inner join pdt
on inv.GMID = pdt.[GMID] and inv.annee= pdt.[ANNEE] and inv.mois= pdt.mois_chiffre
这篇关于错误的querry的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!