Ormlite внутреннее соединение на трех таблицах

Я хочу создать внутреннее соединение на трех таблицах, например, таких как:

SELECT C.Description, D.ItemDescription FROM OrderDetailStatement AS D INNER JOIN OrderHeaderStatement AS H ON H.OrderHeaderStatementRefID = D.OrderHeaderStatementRefID INNER JOIN customers AS C ON H.CustomerRefID = C.CustomerRefID WHERE (D.MixedValue > 1000) 

Но я немного смущен, не могли бы вы предоставить мне пошаговое руководство?

заранее спасибо

Solutions Collecting From Web of "Ormlite внутреннее соединение на трех таблицах"

ORMLite теперь поддерживает простые операторы JOIN . Вы можете сделать что-то вроде следующего:

 // start the order header query QueryBuilder<OrderHeader, Integer> orderHeaderQb = orderHeaderDao.queryBuilder(); QueryBuilder<Customer, Integer> customerQb = customerDao.queryBuilder(); // join with the order query orderHeaderQb.join(customerQb); // start the order statement query QueryBuilder<OrderStatement, Integer> orderStatementQb = orderStatementDao.queryBuilder(); orderStatementQb.where().gt("mixedvalue", 100); // join with the order-header query orderStatementQb.join(orderHeaderQb); List<OrderStatement> orderStatementQb.query(); 

Обратите внимание, однако, что вы можете получать сущности из построителя запросов с помощью этого механизма. Если вы хотите получить два поля описания из разных объектов, вам придется использовать сырой запрос.

Существует поддержка «сырых запросов», включая метод Dao.queryRaw() котором вы можете использовать свой собственный SQL. Я подозреваю, что вы их уже нашли. Вот документы для необработанных запросов .