All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jooq.WindowRowsStep Maven / Gradle / Ivy

/*
 * 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
 *
 *  https://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
 * Apache-2.0 and offer limited warranties, support, maintenance, and commercial
 * database integrations.
 *
 * For more information, please visit: https://www.jooq.org/legal/licensing
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 */
package org.jooq;

// ...
// ...
// ...
// ...
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
// ...
import static org.jooq.SQLDialect.MARIADB;
// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
import static org.jooq.SQLDialect.POSTGRES;
// ...
// ...
// ...
// ...
import static org.jooq.SQLDialect.SQLITE;
// ...
// ...
// ...
// ...
// ...
import static org.jooq.SQLDialect.YUGABYTEDB;

import org.jetbrains.annotations.NotNull;

/**
 * This type is used for the window function DSL API.
 * 

* Example:


 * field.firstValue()
 *      .ignoreNulls()
 *      .over()
 *      .partitionBy(AUTHOR_ID)
 *      .orderBy(PUBLISHED_IN.asc())
 *      .rowsBetweenUnboundedPreceding()
 *      .andUnboundedFollowing()
 * 
* * @param The function return type * @author Lukas Eder */ public interface WindowRowsStep extends WindowFinalStep { /** * Add a ROWS UNBOUNDED PRECEDING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rowsUnboundedPreceding(); /** * Add a ROWS [number] PRECEDING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rowsPreceding(int number); /** * Add a ROWS CURRENT ROW frame clause to the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rowsCurrentRow(); /** * Add a ROWS UNBOUNDED FOLLOWING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rowsUnboundedFollowing(); /** * Add a ROWS [number] FOLLOWING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rowsFollowing(int number); /** * Add a ROWS BETWEEN UNBOUNDED PRECEDING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rowsBetweenUnboundedPreceding(); /** * Add a ROWS BETWEEN [number] PRECEDING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rowsBetweenPreceding(int number); /** * Add a ROWS BETWEEN CURRENT ROW … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rowsBetweenCurrentRow(); /** * Add a ROWS BETWEEN UNBOUNDED FOLLOWING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rowsBetweenUnboundedFollowing(); /** * Add a ROWS BETWEEN [number] FOLLOWING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rowsBetweenFollowing(int number); /** * Add a RANGE UNBOUNDED PRECEDING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rangeUnboundedPreceding(); /** * Add a RANGE [number] PRECEDING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rangePreceding(int number); /** * Add a RANGE CURRENT ROW frame clause to the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rangeCurrentRow(); /** * Add a RANGE UNBOUNDED FOLLOWING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rangeUnboundedFollowing(); /** * Add a RANGE [number] FOLLOWING frame clause to the window * function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep rangeFollowing(int number); /** * Add a RANGE BETWEEN UNBOUNDED PRECEDING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rangeBetweenUnboundedPreceding(); /** * Add a RANGE BETWEEN [number] PRECEDING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rangeBetweenPreceding(int number); /** * Add a RANGE BETWEEN CURRENT ROW … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rangeBetweenCurrentRow(); /** * Add a RANGE BETWEEN UNBOUNDED FOLLOWING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rangeBetweenUnboundedFollowing(); /** * Add a RANGE BETWEEN [number] FOLLOWING … frame clause to * the window function. */ @NotNull @Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep rangeBetweenFollowing(int number); /** * Add a GROUPS UNBOUNDED PRECEDING frame clause to the window * function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep groupsUnboundedPreceding(); /** * Add a GROUPS [number] PRECEDING frame clause to the window * function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep groupsPreceding(int number); /** * Add a GROUPS CURRENT ROW frame clause to the window function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep groupsCurrentRow(); /** * Add a GROUPS UNBOUNDED FOLLOWING frame clause to the window * function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep groupsUnboundedFollowing(); /** * Add a GROUPS [number] FOLLOWING frame clause to the window * function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowExcludeStep groupsFollowing(int number); /** * Add a GROUPS BETWEEN UNBOUNDED PRECEDING … frame clause to * the window function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep groupsBetweenUnboundedPreceding(); /** * Add a GROUPS BETWEEN [number] PRECEDING … frame clause to * the window function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep groupsBetweenPreceding(int number); /** * Add a GROUPS BETWEEN CURRENT ROW … frame clause to * the window function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep groupsBetweenCurrentRow(); /** * Add a GROUPS BETWEEN UNBOUNDED FOLLOWING … frame clause to * the window function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep groupsBetweenUnboundedFollowing(); /** * Add a GROUPS BETWEEN [number] FOLLOWING … frame clause to * the window function. */ @NotNull @Support({ H2, POSTGRES, SQLITE, YUGABYTEDB }) WindowRowsAndStep groupsBetweenFollowing(int number); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy