Наткнулся на такую глючу. В запросе ниже, выдаётся разные результаты при закомментированном и раскомментированном group by, хотя вроде бы должны быть одинаковые.
with recursive SYM as ( select sr1.ID, sr1.PARENT_ID from SYMPTOMS sr1 --group by 1, 2 ), TREE as ( select 1 as LEV, sp.ID, sp.PARENT_ID from SYM sp where sp.ID = 450797 union all select t.LEV + 1, st.ID, st.PARENT_ID from SYM st inner join TREE t on st.PARENT_ID = t.ID ) select t.LEV, t.ID from TREE t Или меня опять подводит мой «здравый смысл»? Пример возник из попытки написать проверку некоторого условия которое зависит от родителей. Т. е. SYM предполагался довольно сложным - вычисляющим данные для этого условия. ОС Kubuntu 11.10 i386 Сервер SS 2.5.0.26074 из стандартных реп. Табличка: CREATE TABLE SYMPTOMS ( ID D_ID, PARENT_ID D_ID_OR_NULL, -- отгрызено полей CONSTRAINT PK_SYMPTOMS PRIMARY KEY (ID), CONSTRAINT FK_SYMP2SYM_ID FOREIGN KEY (SYM_ID) REFERENCES SYMPTOMS (ID) ); Данные: INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450797', '450773'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450798', '450797'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450799', '450798'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450800', '450798'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450801', '450797'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450802', '450801'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('450803', '450801'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('645590', '450797'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('645591', '645590'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('645592', '645590'); INSERT INTO SYMPTOMS (ID, PARENT_ID) VALUES ('645593', '645592'); -- Александр Замараев