@@ -3105,6 +3105,21 @@ open class Jpql : JpqlDsl {
31053105 return SortDsl (this .toExpression(), Sort .Order .DESC )
31063106 }
31073107
3108+ /* *
3109+ * Creates a select clause in a select query.
3110+ */
3111+ @SinceJdsl(" 3.0.0" )
3112+ fun <T : Any > select (
3113+ type : KClass <T >,
3114+ expr : Expressionable <T >,
3115+ ): SelectQueryFromStep <T > {
3116+ return SelectQueryFromStepDsl (
3117+ type,
3118+ distinct = false ,
3119+ listOf (expr.toExpression()),
3120+ )
3121+ }
3122+
31083123 /* *
31093124 * Creates a select clause in a select query.
31103125 */
@@ -3119,6 +3134,22 @@ open class Jpql : JpqlDsl {
31193134 )
31203135 }
31213136
3137+ /* *
3138+ * Creates a select clause in a select query.
3139+ */
3140+ @SinceJdsl(" 3.0.0" )
3141+ fun <T : Any > select (
3142+ type : KClass <T >,
3143+ expr : Expressionable <* >,
3144+ vararg exprs : Expressionable <* >,
3145+ ): SelectQueryFromStep <T > {
3146+ return SelectQueryFromStepDsl (
3147+ type,
3148+ distinct = false ,
3149+ listOf (expr.toExpression()) + exprs.map { it.toExpression() },
3150+ )
3151+ }
3152+
31223153 /* *
31233154 * Creates a select clause in a select query.
31243155 */
@@ -3134,6 +3165,21 @@ open class Jpql : JpqlDsl {
31343165 )
31353166 }
31363167
3168+ /* *
3169+ * Creates a select clause in a select query.
3170+ */
3171+ @SinceJdsl(" 3.0.0" )
3172+ fun <T : Any > selectDistinct (
3173+ type : KClass <T >,
3174+ expr : Expressionable <T >,
3175+ ): SelectQueryFromStep <T > {
3176+ return SelectQueryFromStepDsl (
3177+ type,
3178+ distinct = true ,
3179+ listOf (expr.toExpression()),
3180+ )
3181+ }
3182+
31373183 /* *
31383184 * Creates a select clause in a select query.
31393185 */
@@ -3148,6 +3194,22 @@ open class Jpql : JpqlDsl {
31483194 )
31493195 }
31503196
3197+ /* *
3198+ * Creates a select clause in a select query.
3199+ */
3200+ @SinceJdsl(" 3.0.0" )
3201+ fun <T : Any > selectDistinct (
3202+ type : KClass <T >,
3203+ expr : Expressionable <* >,
3204+ vararg exprs : Expressionable <* >,
3205+ ): SelectQueryFromStep <T > {
3206+ return SelectQueryFromStepDsl (
3207+ type,
3208+ distinct = true ,
3209+ listOf (expr.toExpression()) + exprs.map { it.toExpression() },
3210+ )
3211+ }
3212+
31513213 /* *
31523214 * Creates a select clause in a select query.
31533215 */
@@ -3163,6 +3225,27 @@ open class Jpql : JpqlDsl {
31633225 )
31643226 }
31653227
3228+ /* *
3229+ * Creates a select clause with the DTO projection in a select query.
3230+ */
3231+ @SinceJdsl(" 3.0.0" )
3232+ fun <T : Any > selectNew (
3233+ type : KClass <T >,
3234+ expr : Expressionable <* >,
3235+ vararg exprs : Expressionable <* >,
3236+ ): SelectQueryFromStep <T > {
3237+ return SelectQueryFromStepDsl (
3238+ returnType = type,
3239+ distinct = false ,
3240+ select = listOf (
3241+ Expressions .new(
3242+ type,
3243+ listOf (expr.toExpression()) + exprs.map { it.toExpression() },
3244+ ),
3245+ ),
3246+ )
3247+ }
3248+
31663249 /* *
31673250 * Creates a select clause with the DTO projection in a select query.
31683251 */
@@ -3183,6 +3266,27 @@ open class Jpql : JpqlDsl {
31833266 )
31843267 }
31853268
3269+ /* *
3270+ * Creates a select clause with the DTO projection in a select query.
3271+ */
3272+ @SinceJdsl(" 3.0.0" )
3273+ fun <T : Any > selectDistinctNew (
3274+ type : KClass <T >,
3275+ expr : Expressionable <* >,
3276+ vararg exprs : Expressionable <* >,
3277+ ): SelectQueryFromStep <T > {
3278+ return SelectQueryFromStepDsl (
3279+ returnType = type,
3280+ distinct = true ,
3281+ select = listOf (
3282+ Expressions .new(
3283+ type,
3284+ listOf (expr.toExpression()) + exprs.map { it.toExpression() },
3285+ ),
3286+ ),
3287+ )
3288+ }
3289+
31863290 /* *
31873291 * Creates a select clause with the DTO projection in a select query.
31883292 */
0 commit comments