io.army.criteria.postgre.PostgreCtes Maven / Gradle / Ivy
package io.army.criteria.postgre;
import io.army.criteria.CteBuilderSpec;
/**
*
* This interface representing Postgre cte builder.
*
* @since 1.0
*/
public interface PostgreCtes extends CteBuilderSpec {
/**
*
* create new cte that create new single-table INSERT statement that is sub insert statement in dynamic with clause.
*
*
* @param name cte name
*/
PostgreInsert._DynamicCteParensSpec subSingleInsert(String name);
/**
*
* create new cte that create new single-table UPDATE statement that is sub insert statement in dynamic with clause.
*
*
* @param name cte name
*/
PostgreUpdate._DynamicCteParensSpec subSingleUpdate(String name);
/**
*
* create new cte that create new single-table DELETE statement that is sub insert statement in dynamic with clause.
*
*
* @param name cte name
*/
PostgreDelete._DynamicCteParensSpec subSingleDelete(String name);
PostgreQuery._DynamicCteParensSpec subQuery(String name);
PostgreValues._DynamicCteParensSpec subValues(String name);
}