ORDER BY вызывает запрос не работает?

У меня есть запрос, который работает, как задумано в доступе. Я «преобразовал» его для веб-системы, которая не хочет работать. Однако запрос работает правильно, когда я удаляю ORDER BY (В самом низу приведенного примера), что требуется.

Я не уверен, что может быть причиной проблемы. Появляется следующее сообщение об ошибке:
Expected lexical element not found: ) There was a problem parsing the table names after the FROM keyword in your SELECT statement. -- Location of error in the SQL statement is: 812 (line: 17 column: 72)

Я не хочу публиковать весь запрос, поскольку он длинный (если не требуется), но проблема возникает в нижней строке:

    SELECT TOP 5 [90Days].PRODUCT, [90Days].product2, [90Days].pcustkey, [90Days].[90DayThroughput], TABLETHREE.SumOfLQUAN AS [Current Stock], (ROUND([SumOfLQUAN]/[90DayThroughput],3))*90 AS [DaysRemaining] FROM
(
SELECT TABLEONE.PRODUCT, Sum(TABLEONE.QUANTITY) AS [90DayThroughput], TABLETWO.product2, TABLETWO.pcustkey FROM TABLETWO INNER JOIN TABLEONE ON TABLETWO.PRODCODE = TABLEONE.PRODUCT WHERE
(
(
(TABLEONE.DATE)>='$date'-90
)
AND
(
(TABLEONE.type)='I11' Or (TABLEONE.type)=' 11'
)
AND
(
(TABLETWO.POWNER)='$custCode'
)
)
GROUP BY TABLEONE.PRODUCT, TABLETWO.product2, TABLETWO.pcustkey ORDER BY Sum(TABLEONE.QUANTITY) DESC

Любая помощь будет принята с благодарностью. Я могу предоставить больше запроса, если требуется.

0

Решение

Я думаю, что вы пропускаете часть запроса, если он работал до добавления заказа
нет присоединения к TABLETHREE

Я создал следующее, чтобы я мог выполнить запрос

TRY
DROP TABLE #Table1;
CATCH ADS_SCRIPT_EXCEPTION
IF __errcode = 7112 THEN
--Do Nothing
ELSE
RAISE; // re-raise the exception
END IF;
END TRY;

TRY
DROP TABLE #Table2;
CATCH ADS_SCRIPT_EXCEPTION
IF __errcode = 7112 THEN
--Do Nothing
ELSE
RAISE; // re-raise the exception
END IF;
END TRY;

Select 'AAA' as Product, 12 as Quantity, 'I11' as Type, curdate() as  "Date"into #Table1
from System.iota;

Select 'AAA' as Product, 'AAA111' as CustKey, '$custCode' as POwner, 'MyPRODCODE' as PRODCODE, 'KEY' as pcustkey
into #Table2
from System.iota;

я прокомментировал материал TABLETHREE
вам нужно было иметь «90Days» после того, как ваша группа
и я изменил порядок на ORDER BY [90Days]. [90DayThroughput] DESC

SELECT TOP 5
[90Days].PRODUCT,
[90Days].product2,
[90Days].pcustkey,
[90Days].[90DayThroughput]
--,#Table3.SumOfLQUAN AS [Current Stock],
--(ROUND([SumOfLQUAN]/[90DayThroughput],3))*90 AS [DaysRemaining]
FROM
(
SELECT tb1.PRODUCT,
Sum(tb1.QUANTITY) AS [90DayThroughput],
tb2.PRODCODE as product2,
tb2.pcustkey
FROM #Table2 tb2
INNER JOIN #Table1 tb1 ON tb2.PRODCODE = tb1.PRODUCT WHERE
(
(
(tb1.DATE)>=curdate()-90
)
AND
(
(tb1.type)='I11' Or (tb1.type)=' 11'
)
AND
(
(tb2.POWNER)='$custCode'
)
)
GROUP BY tb1.PRODUCT, tb2.PRODCODE, tb2.pcustkey
)"90Days"ORDER BY [90Days].[90DayThroughput] DESC
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]