LocalDateTimeExpression.java
package com.github.mygreen.sqlmapper.metamodel.expression;
import java.time.LocalDateTime;
import com.github.mygreen.sqlmapper.metamodel.operation.LocalDateTimeOperation;
import com.github.mygreen.sqlmapper.metamodel.operator.FunctionOp;
/**
* {@link LocalDateTime} による式を表現します。
*
*
* @author T.TSUCHIE
*
*/
public abstract class LocalDateTimeExpression extends TemporalExpressionBase<LocalDateTime> {
public LocalDateTimeExpression(Expression<LocalDateTime> mixin) {
super(mixin);
}
/**
* 現在の日時を取得する関数 {@literal CURRENT_TIMESTAMP} を返します。
* @return 関数 {@literal CURRENT_TIMESTAMP}
*/
public static LocalDateTimeExpression currentTimestamp() {
return new LocalDateTimeOperation(FunctionOp.CURRENT_TIMESTAMP);
}
/**
* 精度を指定して、現在の日時を取得する関数 {@literal CURRENT_TIMESTAMP} を返します。
* @param precision 精度
* @return 関数 {@literal CURRENT_TIMESTAMP}
*/
public static LocalDateTimeExpression currentTimestamp(int precision) {
return new LocalDateTimeOperation(FunctionOp.CURRENT_TIMESTAMP, Constant.create(precision));
}
}