Показать сообщение отдельно
Старый 19.06.2017, 17:24   #16  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
28,894 / 3799 (184) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от smailik Посмотреть сообщение
Замена на inner join ничего не дала.
Текст запроса:
SELECT * FROM InventTransferTable WHERE ((ReceiveDate>={ts '2017-05-20 00:00:00.000'} AND ReceiveDate<={ts '2017-06-19 00:00:00.000'})) AND ((TransferStatus = 2)) AND ((InventLocationIdFrom = N'242')) JOIN * FROM InventTransferLine WHERE InventTransferTable.TransferId = InventTransferLine.TransferId JOIN * FROM InventTable WHERE InventTransferLine.ItemId = InventTable.ItemId JOIN * FROM InventLocation WHERE InventTransferTable.InventLocationIdFrom = InventLocation.InventLocationId JOIN * FROM InventLocation WHERE InventTransferTable.InventLocationIdTo = InventLocation.InventLocationId AND ((((InventLocation_1.InventLocationType == 8) || (InventLocation_2.InventLocationType == 8))))
1. у вас точно есть enum ItemType со значением 8? просто в стандартной 2012 такого нет
2. обратите внимание на название таблиц.
в запросе у вас ДВЕ inventLocation, а в условии название таблицы InventLocation_1 и InventLocation_2.

Стройте запросы в АОТ!
в коде пишите только одну строку Query q = new Query(querystr(mySuperQuery));
и не парьтесь.
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.