Когда у меня есть две ссылки на члены с синтаксисом & [Value], тогда я получаю эту ошибку:
Запрос (3, 3) Функция ожидает выражение набора кортежей для аргумента 1.Использовалось строковое или числовое выражение.
Обратите внимание, что в The function
есть два пробела, как если бы он пытался назвать одну из функций, у которой нет имени.Я могу воссоздать проблему с образцом базы данных «Adventure Works DW 2008R2».
Не работает:
SELECT
NON EMPTY
{
[Date].[Day of Month].&[1]
* [Sales Territory].[Sales Territory Country].&[Canada]
* [Measures].[Sales Amount]
}
ON COLUMNS,
NON EMPTY
{
[Product].[Product Name]
}
ON ROWS
FROM [Adventure Works]
Работает:
SELECT
NON EMPTY
{
[Date].[Day of Month].&[1]
* {([Sales Territory].[Sales Territory Country].&[Canada])}
* [Measures].[Sales Amount]
}
ON COLUMNS,
NON EMPTY
{
[Product].[Product Name]
}
ON ROWS
FROM [Adventure Works]
Также Работает:
SELECT
NON EMPTY
{
{([Date].[Day of Month].&[1])}
* [Sales Territory].[Sales Territory Country].&[Canada]
* [Measures].[Sales Amount]
}
ON COLUMNS,
NON EMPTY
{
[Product].[Product Name]
}
ON ROWS
FROM [Adventure Works]
Также работает:
SELECT
NON EMPTY
{
[Date].[Day of Month].&[1]
* [Measures].[Sales Amount]
}
ON COLUMNS,
NON EMPTY
{
[Product].[Product Name]
}
ON ROWS
FROM [Adventure Works]
Также работает:
SELECT
NON EMPTY
{
[Sales Territory].[Sales Territory Country].&[Canada]
* [Measures].[Sales Amount]
}
ON COLUMNS,
NON EMPTY
{
[Product].[Product Name]
}
ON ROWS
FROM [Adventure Works]
Что интерпретировало мое выражение, если не как набор кортежей?Я все время спотыкаюсь об этих вещах, и это действительно сбивает с толку то, что он пытается сделать с моими наборами кортежей, думая, что это строковое или числовое выражение.