簡體   English   中英

任何人都可以幫我將Access Query轉換為MS SQL Query

[英]Can anyone help me to convert Access Query to MS SQL Query

嗨,我有一個訪問查詢,任何人可以幫我請我將查詢轉換為MS SQL 2008查詢。

掙扎着TransformPIVOT

訪問查詢是:

TRANSFORM Count(vwg_vkCustomers.CustomerNo) AS CountOfCustomerNo
SELECT vwg_vkCustomers.ClassID, vwg_vkCustomers.SubjectTypeID, vwg_vkCustomers.TutorCode
FROM vwg_vkCustomers
WHERE (((vwg_vkCustomers.TutorCode)="123456") AND ((vwg_vkCustomers.CustomerAdded)>#6/21/2011#))
GROUP BY vwg_vkCustomers.ClassID, vwg_vkCustomers.SubjectTypeID, vwg_vkCustomers.TutorCode
PIVOT vwg_vkCustomers.Type;

謝謝

我不知道IIF的T-SQL版本,但這是不使用TRANSFORM / PIVOT的交叉表查詢的Access版本。 對所需的每個列重復IIF表達式:

SELECT vwg_vkCustomers.ClassID, vwg_vkCustomers.SubjectTypeID, vwg_vkCustomers.TutorCode,
Sum(IIF(vwg_vkCustomers.Type="Whatever",1,0) AS TypeWhatever 
FROM vwg_vkCustomers
WHERE (((vwg_vkCustomers.TutorCode)="123456") AND ((vwg_vkCustomers.CustomerAdded)>#6/21/2011#))
GROUP BY vwg_vkCustomers.ClassID, vwg_vkCustomers.SubjectTypeID, vwg_vkCustomers.TutorCode

與TimD的回答結合這一點,因為我不爭論TRANSFORM經常....

對於Iif ,請使用CASE

...
CASE vwg_vkCustomers.Type
WHEN 'Whatever' 1
ELSE 0
END,
...

請注意,您使用單引號而不是double。

暫無
暫無

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

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