![]() |
#1 |
Moderator
|
join
Почему курсор пуст??
PHP код:
|
|
![]() |
#2 |
Moderator
|
Потому, что вы запрашиваете count(RecId) и максимум, на что вы можете надеяться - это получить количкство записей, удовлетворяющих, наложенным условиям:
PHP код:
|
|
![]() |
#3 |
Moderator
|
Как быть?
|
|
![]() |
#4 |
Участник
|
Ну почему же, Андре.
Можно еще получить знание InventDimId, поскольку по нему идет группировка. для того, чтобы получать значение wMSLocationId надо включить его в группировки PHP код:
|
|
![]() |
#5 |
Moderator
|
PHP код:
|
|
![]() |
#6 |
Модератор
|
PHP код:
Георгий. |
|
![]() |
#7 |
Moderator
|
Цитата:
Ну почему же, Андре.
Можно еще получить знание InventDimId, поскольку по нему идет группировка. |
|
![]() |
#8 |
Участник
|
а черт...
спасибо, Андре, спасибо, George. |
|
![]() |
#9 |
Moderator
|
PHP код:
для двух полей -- вылетает ошибка -- таблица не содержит это поле! |
|
![]() |
#10 |
Moderator
|
Не смотрел в Аксапту, но подозреваю, что поля из разных таблиц. В этом случае group by надо писать два раза - для каждой таблицы.
|
|
![]() |
#11 |
----------------
|
Простите за глупый вопрос.... а по каким полям Вы их объединяите?
|
|
![]() |
#12 |
Moderator
|
Это как раз ответ будет глупым, а не вопрос:
Хотелось по полю InventDimId |
|
![]() |
#13 |
Moderator
|
Цитата:
Хотелось по полю InventDimId
p.s. Общий совет - щелкните на AOT правой клавишей мыши -> Найти. И посмотрите примеры использования select, group by и т.д. |
|
![]() |
#14 |
Moderator
|
Спасибо за совет!
|
|
![]() |
#15 |
Moderator
|
Повторюсь, т.к. запрос я так и не написал:
Есть две таблицы InventSum и InventDim. Мне бы хотелось иметь выборку состоящую ровно из всех записей InventSum при этом кажой записи сооьветсвует довесок из InventDim ( склад и ячейка) связь по InventDimId. Пока я остановился на таком запросе PHP код:
Но не видит дополнений из InventDim (Ячейку wMSLocationId) Буду благодарен любому совету! |
|
![]() |
#16 |
Участник
|
Блин, ты сразу 2 ошибки совершил в своём запросе. 8()
Во первых - exists join по своему определению НИЧЕГО не должен возвращать в подчинённой таблице! Это очевидно, ведь для каждой записи в главной таблице по идее в подчинённой может соотвествовать несколько записей, следовательно неизвестно какую именно надо возвращать, следовательно exists/notexists join ничего не должен возвращать тебе в подчинённых таблицах. Во вторых - в условии-связке ты написал where inventSum.InventDimId == inventSum.InventDimId. Если приглядеться к сей конструкции становится очевидно почему она не работает. ![]() Следующий код работает нормально: PHP код:
|
|
![]() |
#17 |
Moderator
|
Спасибо ОГРОМНОЕ!
Группировки мне не понадобятся, я наложу еще два условия!
Запрос как раз то что мне нужно! Единственно -- как оптимизировать цикл, что бы он шел не max(20,<20) а реальное число записей?? Еще раз спасибо! ![]() |
|
![]() |
#18 |
Участник
|
Re: Спасибо ОГРОМНОЕ!
Цитата:
...
Единственно -- как оптимизировать цикл, что бы он шел не max(20,<20) а реальное число записей?? ... ![]() Ну положим слово "оптимизировать" тут неуместно, да и логическая конструкция max(20,<20) всегда возвращает 20 (min было бы уместнее)....... тем не менее видимо ты хочешь добиться следующего: PHP код:
|
|
![]() |
#19 |
Moderator
|
![]()
Спасибо!
![]() ![]() |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|