Этот вопрос относится к более раннему post of mine с кодом, который я запускал на SQL Server. Теперь я использую Sybase ASE 15.7 и сталкиваюсь с проблемами с CTE
. Ошибка, которую я получаю, находится на части кода WITH
. Я проверил this post, который заявляет, что использует подзапросы, но разве это не то, что я использую? Я не так хорошо знаком с CTE's
.Sybase ASE 15.7 CTE to Subquery Issue
Единственное изменение, которое я сделал между SQL Server и Sybase, заключалось в том, что я использую temp table
, #TEST1
, вместо реального table
.
Что мне нужно изменить, чтобы заставить запрос работать?
WITH range
AS (
SELECT NM1 AS c FROM #TEST1
UNION
SELECT NM2 FROM #TEST1
UNION
SELECT NM3 FROM #TEST1
UNION
SELECT NM4 FROM #TEST1
UNION
SELECT NM5 FROM #TEST1)
SELECT r1.c, r2.c, r3.c, r4.c, r5.c
FROM range r1, range r2, range r3, range r4, range r5
WHERE r1.c<r2.c AND r2.c<r3.c AND r3.c<r4.c AND r4.c<r5.c
CTE не поддерживаются в Sybase ASE, поэтому вам действительно нужно переписать весь запрос. – RobV