Цитата:
Сообщение от
sukhanchik
Ваш вариант
PHP код:
SELECT GROUPID FROM TMPTABLE1
WHERE TMPTABLE1.GROUPID EXISTS IN (SELECT * FROM TMPTABLE2 WHERE TMPTABLE2.ID = TMPTABLE1.ID)
GROUP BY GROUPID
некорректен - т.к. конструкция SELECT * FROM TMPTABLE2 WHERE TMPTABLE2.ID = TMPTABLE1.ID не отработает из-за отсутствия в списке для выборки (а значит и группировки) из 1-й таблицы поля ID (группировка будет наложена раньше связывания).
В том то и дело, что корректен, но только для постоянных таблиц. Т.е. SQL Server всё делает в правильном (ожидаемом) порядке. Сначала Exists, а уже потом Group by. Когда же дело доходит до временных таблиц, то тут Axapta всё берёт в свои руки и делает это, мягко говоря, не очень