Search in sources :

Example 1 with BookToBookStore

use of org.jooq.example.db.h2.tables.BookToBookStore in project jOOQ by jOOQ.

the class QueryTest method testJoin.

@Test
public void testJoin() throws Exception {
    // All of these tables were generated by jOOQ's Maven plugin
    Book b = BOOK.as("b");
    Author a = AUTHOR.as("a");
    BookStore s = BOOK_STORE.as("s");
    BookToBookStore t = BOOK_TO_BOOK_STORE.as("t");
    Result<Record3<String, String, Integer>> result = create.select(a.FIRST_NAME, a.LAST_NAME, countDistinct(s.NAME)).from(a).join(b).on(b.AUTHOR_ID.equal(a.ID)).join(t).on(t.BOOK_ID.equal(b.ID)).join(s).on(t.BOOK_STORE_NAME.equal(s.NAME)).groupBy(a.FIRST_NAME, a.LAST_NAME).orderBy(countDistinct(s.NAME).desc()).fetch();
    assertEquals(2, result.size());
    assertEquals("Paulo", result.getValue(0, a.FIRST_NAME));
    assertEquals("George", result.getValue(1, a.FIRST_NAME));
    assertEquals("Coelho", result.getValue(0, a.LAST_NAME));
    assertEquals("Orwell", result.getValue(1, a.LAST_NAME));
    assertEquals(Integer.valueOf(3), result.getValue(0, countDistinct(s.NAME)));
    assertEquals(Integer.valueOf(2), result.getValue(1, countDistinct(s.NAME)));
}
Also used : BookToBookStore(org.jooq.example.db.h2.tables.BookToBookStore) BookStore(org.jooq.example.db.h2.tables.BookStore) BookToBookStore(org.jooq.example.db.h2.tables.BookToBookStore) Book(org.jooq.example.db.h2.tables.Book) Author(org.jooq.example.db.h2.tables.Author) Record3(org.jooq.Record3) Test(org.junit.Test)

Example 2 with BookToBookStore

use of org.jooq.example.db.h2.tables.BookToBookStore in project jOOQ by jOOQ.

the class QueryTest method testJoin.

@Test
public void testJoin() throws Exception {
    // All of these tables were generated by jOOQ's Maven plugin
    Book b = BOOK.as("b");
    Author a = AUTHOR.as("a");
    BookStore s = BOOK_STORE.as("s");
    BookToBookStore t = BOOK_TO_BOOK_STORE.as("t");
    Result<Record3<String, String, Integer>> result = create.select(a.FIRST_NAME, a.LAST_NAME, countDistinct(s.NAME)).from(a).join(b).on(b.AUTHOR_ID.equal(a.ID)).join(t).on(t.BOOK_ID.equal(b.ID)).join(s).on(t.BOOK_STORE_NAME.equal(s.NAME)).groupBy(a.FIRST_NAME, a.LAST_NAME).orderBy(countDistinct(s.NAME).desc()).fetch();
    assertEquals(2, result.size());
    assertEquals("Paulo", result.getValue(0, a.FIRST_NAME));
    assertEquals("George", result.getValue(1, a.FIRST_NAME));
    assertEquals("Coelho", result.getValue(0, a.LAST_NAME));
    assertEquals("Orwell", result.getValue(1, a.LAST_NAME));
    assertEquals(Integer.valueOf(3), result.getValue(0, countDistinct(s.NAME)));
    assertEquals(Integer.valueOf(2), result.getValue(1, countDistinct(s.NAME)));
}
Also used : BookToBookStore(org.jooq.example.db.h2.tables.BookToBookStore) BookStore(org.jooq.example.db.h2.tables.BookStore) BookToBookStore(org.jooq.example.db.h2.tables.BookToBookStore) Book(org.jooq.example.db.h2.tables.Book) Author(org.jooq.example.db.h2.tables.Author) Record3(org.jooq.Record3) Test(org.junit.Test)

Aggregations

Record3 (org.jooq.Record3)2 Author (org.jooq.example.db.h2.tables.Author)2 Book (org.jooq.example.db.h2.tables.Book)2 BookStore (org.jooq.example.db.h2.tables.BookStore)2 BookToBookStore (org.jooq.example.db.h2.tables.BookToBookStore)2 Test (org.junit.Test)2