org.jooq.SelectOrderByStep Maven / Gradle / Ivy
/*
* Copyright (c) 2009-2016, Data Geekery GmbH (http://www.datageekery.com)
* All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* Other licenses:
* -----------------------------------------------------------------------------
* Commercial licenses for this work are available. These replace the above
* ASL 2.0 and offer limited warranties, support, maintenance, and commercial
* database integrations.
*
* For more information, please visit: http://www.jooq.org/licenses
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package org.jooq;
import static org.jooq.SQLDialect.CUBRID;
// ...
// ...
import java.util.Collection;
import javax.annotation.Generated;
/**
* This type is used for the {@link Select}'s DSL API when selecting generic
* {@link Record} types.
*
* Example:
* -- get all authors' first and last names, and the number
* -- of books they've written in German, if they have written
* -- more than five books in German in the last three years
* -- (from 2011), and sort those authors by last names
* -- limiting results to the second and third row
*
* SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
* FROM T_AUTHOR
* JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
* WHERE T_BOOK.LANGUAGE = 'DE'
* AND T_BOOK.PUBLISHED > '2008-01-01'
* GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
* HAVING COUNT(*) > 5
* ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
* LIMIT 2
* OFFSET 1
* FOR UPDATE
* OF FIRST_NAME, LAST_NAME
* NO WAIT
*
Its equivalent in jOOQ
* create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
* .from(T_AUTHOR)
* .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
* .where(TBook.LANGUAGE.equal("DE"))
* .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
* .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
* .having(create.count().greaterThan(5))
* .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
* .limit(2)
* .offset(1)
* .forUpdate()
* .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
* .noWait();
*
Refer to the manual for more details
*
* @author Lukas Eder
*/
public interface SelectOrderByStep extends SelectLimitStep {
// [jooq-tools] START [order-by-field-array]
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep1 orderBy(Field field1);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep2 orderBy(Field field1, Field field2);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep3 orderBy(Field field1, Field field2, Field field3);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep4 orderBy(Field field1, Field field2, Field field3, Field field4);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep5 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep6 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep7 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep8 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep9 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep10 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep11 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep12 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep13 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep14 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep15 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14, Field field15);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep16 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14, Field field15, Field field16);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep17 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14, Field field15, Field field16, Field field17);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep18 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14, Field field15, Field field16, Field field17, Field field18);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep19 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14, Field field15, Field field16, Field field17, Field field18, Field field19);
/**
* Add an ORDER BY
clause to the query.
*/
@Generated("This method was generated using jOOQ-tools")
@Support
SelectSeekStep20 orderBy(Field field1, Field field2, Field field3, Field field4, Field field5, Field field6, Field field7, Field field8, Field field9, Field field10, Field field11, Field field12, Field field13, Field field14, Field field15, Field field16, Field field17, Field