この SQL クエリがあり、その結果を Excel 2013 シート/テーブルで取得したい
SELECT
[MS Part Number], [Item Name], SUM([Aantal]) AS Aantal, [Prijs]
FROM
(
SELECT
[MS Part Number], [Item Name], SUM([Aantal]) AS Aantal, [Prijs]
FROM
vwSPLAInformatie
WHERE
(DATEPART(YEAR, fakdat) = '2013')
AND (DATEPART(QUARTER, fakdat) = '1')
AND docnumber LIKE '%kwartaal%'
GROUP BY
[MS Part Number], [Item Name], [Aantal], [Prijs]
UNION ALL
SELECT
[MS Part Number], [Item Name], SUM([Aantal]) AS Aantal, [Prijs]
FROM
vwSPLAInformatie
WHERE
(DATEPART(YEAR, fakdat) = '2013')
AND (DATEPART(MONTH, fakdat) = '1')
AND NOT docnumber LIKE '%kwartaal%'
GROUP BY
[MS Part Number], [Item Name], [Aantal], [Prijs]
) AS Basis
GROUP BY
[MS Part Number], [Item Name], [Prijs]
それは完全に機能します。唯一のことは、Excelで3つのセル値に接続したい4つのパラメーターがあることです。(年 = 2013) (四半期 = 1) (月 = 2)。しかし、クエリを次のように調整すると:
WHERE (DATEPART(YEAR, fakdat) = '?')
そして、Excelで2013というセルを選択したので、基本的には機能するはずですが、機能しません。次のエラーが表示されます。
[Microsoft]ODBC SQL Server][SQL Server]Conversion failed when converting the varchar value '?' to data type in.
値は同じですが、まったく機能しません。どうすればこれを修正できますか? これが機能するとき、私は非常に幸せです!よろしくお願いします。