AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.09.2009, 14:02   #5  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,715 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Синтаксис вида

join Table where ...

предполагает, что из таблицы Table необходимо взять все поля. Что противоречит аггрегирующей функции Count() в первом select. Необходимо либо добавить аггрегирующую функцию и во вторую таблицу

X++:
select Count(RecId) from Table1
join Count(RecId) from Table2 where Table1.field1 == Table2.field1 && Table2.field2 == "111"
Либо указать в качестве списка полей второй таблицы - константу. Обычно это TableId

X++:
select Count(RecId) from Table1
join TableId from Table2 where Table1.field1 == Table2.field1 && Table2.field2 == "111"
Добавление группировки, также ограничивает выводимый список полей только полями, участвующими в группировке. Но это не явное ограничение, которое, по возможности, желательно избегать. Просто запрос становится "не прозрачным"

Ну, или воспользоваться советом dech и использовать exists join. Но это уже зависит от того, какое именно количество нужно подсчитать.
За это сообщение автора поблагодарили: mazzy (2).
Теги
count, exists, join, recid, select

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
2 while select или join? _scorp_ DAX: Программирование 9 23.01.2009 16:02
Select count(RecId) Упорядочить по возрастанию AxTimur DAX: Программирование 7 10.10.2008 15:22
Что лучше select RecId или select TableId Logger DAX: Программирование 9 02.06.2007 15:13
Fred Shen: Always use recId to know if a select statement returns a record Blog bot DAX Blogs 0 28.10.2006 16:40
select count(RecId) DreamCreator DAX: Программирование 10 02.08.2005 12:50

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:08.