Показать сообщение отдельно
Старый 10.05.2005, 22:24   #4  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,340 / 3558 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Lightbulb
Я сразу скажу - что с ходу не совсем до конца сопоставил указанный SELECT и описание задачи (в частности, в описании фигурирует клиент, а в SELECTе им не пахнет ), однако скажу следующее: DISTINCT, в SQLе всегда можно заменить предложением GROUP BY. Т.е. запрос вида
SELECT DISTINCT fld1, fld2
FROM Table
эквивалентен
SELECT fld1, fld2
FROM Table
GROUP BY fld1, fld2
В Аксаптовском SQLе нет слова DISTINCT, однако есть GROUP BY.
(Кстати, Аксаптовский outer join, вообще говоря не эквивалентен OUTER JOIN у T-SQL, я бы даже так сказал, что он эквивалентен LEFT JOIN у T-SQL)
Соответственно, для Вашей задачи логично в запрос включить таблицу клиентов и делать GROUP BY по коду клиента. Также хочу обратить внимание на то, что перечень выбираемых полей в T-SQL указывается сразу весь после SELECT. В то время как в аксаптовском SQL он разбит, и select custTable в Аксапте означает SELECT * FROM CUSTTABLE в T-SQL. А GROUP BY не работает по *, т.е. если используешь GROUP BY необходимо перечислять ВСЕ выбираемые поля