Package com.alibaba.druid.sql
Class SQLUtils
java.lang.Object
com.alibaba.druid.sql.SQLUtils
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionstatic SQLUtils.FormatOption
static SQLUtils.FormatOption
static final Charset
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
acceptAggregateFunction
(String sql, DbType dbType, Consumer<SQLAggregateExpr> consumer, Predicate<SQLAggregateExpr> filter) static void
acceptBinaryOpExpr
(String sql, DbType dbType, Consumer<SQLBinaryOpExpr> consumer, Predicate<SQLBinaryOpExpr> filter) static void
acceptBinaryOpExprGroup
(String sql, DbType dbType, Consumer<SQLBinaryOpExprGroup> consumer, Predicate<SQLBinaryOpExprGroup> filter) static void
acceptBooleanOr
(String sql, DbType dbType, Consumer<SQLBinaryOpExprGroup> consumer) static void
acceptFunction
(String sql, DbType dbType, Consumer<SQLMethodInvokeExpr> consumer, Predicate<SQLMethodInvokeExpr> filter) static void
acceptInsertInto
(String sql, DbType dbType, Consumer<SQLInsertInto> consumer, Predicate<SQLInsertInto> filter) static void
acceptSelectQueryBlock
(String sql, DbType dbType, Consumer<SQLSelectQueryBlock> consumer, Predicate<SQLSelectQueryBlock> filter) static void
acceptTableSource
(String sql, DbType dbType, Consumer<SQLTableSource> consumer, Predicate<SQLTableSource> filter) static void
addCondition
(SQLStatement stmt, SQLBinaryOperator op, SQLExpr condition, boolean left) static String
addCondition
(String sql, String condition, DbType dbType) static String
addCondition
(String sql, String condition, SQLBinaryOperator op, boolean left, DbType dbType) static void
addSelectItem
(SQLStatement stmt, SQLExpr expr, String alias, boolean first) static void
addSelectItem
(SQLSelectQueryBlock queryBlock, SQLExpr expr, String alias, boolean first) static String
addSelectItem
(String selectSql, String expr, String alias, boolean first, DbType dbType) static String
addSelectItem
(String selectSql, String expr, String alias, DbType dbType) static SQLExpr
buildCondition
(SQLBinaryOperator op, SQLExpr condition, boolean left, SQLExpr where) static String
buildToDate
(String columnName, String tableAlias, String pattern, DbType dbType) static Object[]
clearLimit
(String query, DbType dbType) static SQLStatement
convertTimeZone
(SQLStatement stmt, TimeZone from, TimeZone to) static String
convertTimeZone
(String sql, TimeZone from, TimeZone to) static SQLASTOutputVisitor
createFormatOutputVisitor
(Appendable out, List<SQLStatement> statementList, DbType dbType) static SQLASTOutputVisitor
createOutputVisitor
(Appendable out, DbType dbType) static SchemaStatVisitor
createSchemaStatVisitor
(DbType dbType) static SchemaStatVisitor
createSchemaStatVisitor
(SchemaRepository repository) static SchemaStatVisitor
createSchemaStatVisitor
(SchemaRepository repository, DbType dbType) static SchemaStatVisitor
createSchemaStatVisitor
(List<SQLStatement> statementList, DbType dbType) Deprecated.static String
desensitizeTable
(String tableName) static String
forcedNormalize
(String name, DbType dbType) static String
static String
format
(String sql, DbType dbType, SQLUtils.FormatOption option) static String
static String
static String
format
(String sql, DbType dbType, List<Object> parameters, SQLUtils.FormatOption option, SQLParserFeature[] features) static String
static String
formatHive
(String sql) static String
formatHive
(String sql, SQLUtils.FormatOption option) static String
formatMySql
(String sql) static String
formatMySql
(String sql, SQLUtils.FormatOption option) static String
formatOdps
(String sql) static String
formatOdps
(String sql, SQLUtils.FormatOption option) static String
formatOracle
(String sql) static String
formatOracle
(String sql, SQLUtils.FormatOption option) static String
formatPGSql
(String sql, SQLUtils.FormatOption option) static String
formatPresto
(String sql) static String
formatPresto
(String sql, SQLUtils.FormatOption option) static String
formatSQLServer
(String sql) static SQLLimit
getLimit
(SQLStatement statement, DbType dbType) static SQLLimit
static long
static boolean
static boolean
nameEquals
(SQLName a, SQLName b) static boolean
nameEquals
(String a, String b) static String
static String
static String
static SQLExpr
static SQLStatement
static SQLStatement
parseSingleStatement
(String sql, DbType dbType, boolean keepComments) static SQLStatement
parseSingleStatement
(String sql, DbType dbType, SQLParserFeature... features) static SQLStatement
parseSingleStatement
(String sql, String dbType, SQLParserFeature... features) static List<SQLStatement>
parseStatements
(String sql, DbType dbType) static List<SQLStatement>
parseStatements
(String sql, DbType dbType, boolean keepComments) static List<SQLStatement>
parseStatements
(String sql, DbType dbType, SQLParserFeature... features) static List<SQLStatement>
parseStatements
(String sql, String dbType) static List<SQLStatement>
parseStatements
(String sql, String dbType, SQLParserFeature... features) static String
static boolean
replaceInParent
(SQLExpr expr, SQLExpr target) static boolean
replaceInParent
(SQLSelectQuery cmp, SQLSelectQuery dest) static boolean
replaceInParent
(SQLTableSource cmp, SQLTableSource dest) static String
重新排序建表语句,解决建表语句的依赖关系static List<SQLInsertStatement>
splitInsertValues
(DbType dbType, String insertSql, int size) static String
toAntsparkString
(SQLObject sqlObject) static String
toAntsparkString
(SQLObject sqlObject, SQLUtils.FormatOption option) static String
toDB2String
(SQLObject sqlObject) static String
toDB2String
(SQLObject sqlObject, SQLUtils.FormatOption option) static String
toHiveString
(SQLObject sqlObject) static SQLExpr
toMySqlExpr
(String sql) static String
toMySqlString
(SQLObject sqlObject) static String
toMySqlString
(SQLObject sqlObject, SQLUtils.FormatOption option) static String
toMySqlString
(SQLObject sqlObject, VisitorFeature... features) static String
toMySqlStringIfNotNull
(SQLObject sqlObject, String defaultStr) static String
toNormalizeMysqlString
(SQLObject sqlObject) static String
toOdpsString
(SQLObject sqlObject) static String
toOdpsString
(SQLObject sqlObject, SQLUtils.FormatOption option) static String
toOracleString
(SQLObject sqlObject) static String
toOracleString
(SQLObject sqlObject, SQLUtils.FormatOption option) static SQLSelectOrderByItem
toOrderByItem
(String sql, DbType dbType) static String
toPGString
(SQLObject sqlObject) static String
toPGString
(SQLObject sqlObject, SQLUtils.FormatOption option) static SQLSelectItem
toSelectItem
(String sql, DbType dbType) static SQLExpr
static SQLExpr
static String
toSQLServerString
(SQLObject sqlObject) static String
toSQLServerString
(SQLObject sqlObject, SQLUtils.FormatOption option) static String
toSQLString
(SQLObject obj) static String
toSQLString
(SQLObject sqlObject, DbType dbType) static String
toSQLString
(SQLObject sqlObject, DbType dbType, SQLUtils.FormatOption option) static String
toSQLString
(SQLObject sqlObject, DbType dbType, SQLUtils.FormatOption option, VisitorFeature... features) static String
toSQLString
(SQLObject sqlObject, String dbType) static String
toSQLString
(List<SQLStatement> statementList, DbType dbType) static String
toSQLString
(List<SQLStatement> statementList, DbType dbType, SQLUtils.FormatOption option) static String
toSQLString
(List<SQLStatement> statementList, DbType dbType, List<Object> parameters) static String
toSQLString
(List<SQLStatement> statementList, DbType dbType, List<Object> parameters, SQLUtils.FormatOption option) static String
toSQLString
(List<SQLStatement> statementList, DbType dbType, List<Object> parameters, SQLUtils.FormatOption option, Map<String, String> tableMapping) static List<SQLStatement>
toStatementList
(String sql, DbType dbType) static SQLUpdateSetItem
toUpdateSetItem
(String sql, DbType dbType) static String
-
Field Details
-
UTF8
-
DEFAULT_FORMAT_OPTION
-
DEFAULT_LCASE_FORMAT_OPTION
-
-
Constructor Details
-
SQLUtils
public SQLUtils()
-
-
Method Details
-
toSQLString
-
toSQLString
-
toSQLString
-
toSQLString
public static String toSQLString(SQLObject sqlObject, DbType dbType, SQLUtils.FormatOption option, VisitorFeature... features) -
toSQLString
-
toOdpsString
-
toHiveString
-
toOdpsString
-
toAntsparkString
-
toAntsparkString
-
toMySqlString
-
toMySqlStringIfNotNull
-
toMySqlString
-
toNormalizeMysqlString
-
toMySqlString
-
toMySqlExpr
-
formatMySql
-
formatMySql
-
formatOracle
-
formatOracle
-
formatOdps
-
formatPresto
-
formatPresto
-
formatHive
-
formatOdps
-
formatHive
-
formatSQLServer
-
toOracleString
-
toOracleString
-
toPGString
-
toPGString
-
toDB2String
-
toDB2String
-
toSQLServerString
-
toSQLServerString
-
formatPGSql
-
toSQLExpr
-
toOrderByItem
-
toUpdateSetItem
-
toSelectItem
-
toStatementList
-
toSQLExpr
-
format
-
format
-
format
-
format
-
format
-
format
public static String format(String sql, DbType dbType, List<Object> parameters, SQLUtils.FormatOption option, SQLParserFeature[] features) -
toSQLString
-
toSQLString
public static String toSQLString(List<SQLStatement> statementList, DbType dbType, SQLUtils.FormatOption option) -
toSQLString
-
toSQLString
public static String toSQLString(List<SQLStatement> statementList, DbType dbType, List<Object> parameters, SQLUtils.FormatOption option) -
toSQLString
public static String toSQLString(List<SQLStatement> statementList, DbType dbType, List<Object> parameters, SQLUtils.FormatOption option, Map<String, String> tableMapping) -
createOutputVisitor
-
createFormatOutputVisitor
public static SQLASTOutputVisitor createFormatOutputVisitor(Appendable out, List<SQLStatement> statementList, DbType dbType) -
createSchemaStatVisitor
@Deprecated public static SchemaStatVisitor createSchemaStatVisitor(List<SQLStatement> statementList, DbType dbType) Deprecated. -
createSchemaStatVisitor
-
createSchemaStatVisitor
-
createSchemaStatVisitor
-
parseStatements
public static List<SQLStatement> parseStatements(String sql, String dbType, SQLParserFeature... features) -
parseStatements
public static List<SQLStatement> parseStatements(String sql, DbType dbType, SQLParserFeature... features) -
parseStatements
-
parseStatements
-
parseStatements
-
parseSingleStatement
-
parseSingleStatement
public static SQLStatement parseSingleStatement(String sql, String dbType, SQLParserFeature... features) -
parseSingleStatement
public static SQLStatement parseSingleStatement(String sql, DbType dbType, SQLParserFeature... features) -
parseSingleMysqlStatement
-
buildToDate
public static String buildToDate(String columnName, String tableAlias, String pattern, DbType dbType) - Parameters:
columnName
-tableAlias
-pattern
- if pattern is null,it will be set {%Y-%m-%d %H:%i:%s} as mysql default value and set {yyyy-mm-dd hh24:mi:ss} as oracle default valuedbType
-DbType
if dbType is null ,it will be set the mysql as a default value
-
split
-
translateOracleToMySql
-
addCondition
-
addCondition
public static String addCondition(String sql, String condition, SQLBinaryOperator op, boolean left, DbType dbType) -
addCondition
public static void addCondition(SQLStatement stmt, SQLBinaryOperator op, SQLExpr condition, boolean left) -
buildCondition
public static SQLExpr buildCondition(SQLBinaryOperator op, SQLExpr condition, boolean left, SQLExpr where) -
addSelectItem
-
acceptBooleanOr
public static void acceptBooleanOr(String sql, DbType dbType, Consumer<SQLBinaryOpExprGroup> consumer) -
acceptBinaryOpExprGroup
public static void acceptBinaryOpExprGroup(String sql, DbType dbType, Consumer<SQLBinaryOpExprGroup> consumer, Predicate<SQLBinaryOpExprGroup> filter) -
acceptBinaryOpExpr
public static void acceptBinaryOpExpr(String sql, DbType dbType, Consumer<SQLBinaryOpExpr> consumer, Predicate<SQLBinaryOpExpr> filter) -
acceptTableSource
public static void acceptTableSource(String sql, DbType dbType, Consumer<SQLTableSource> consumer, Predicate<SQLTableSource> filter) -
acceptSelectQueryBlock
public static void acceptSelectQueryBlock(String sql, DbType dbType, Consumer<SQLSelectQueryBlock> consumer, Predicate<SQLSelectQueryBlock> filter) -
acceptAggregateFunction
public static void acceptAggregateFunction(String sql, DbType dbType, Consumer<SQLAggregateExpr> consumer, Predicate<SQLAggregateExpr> filter) -
acceptFunction
public static void acceptFunction(String sql, DbType dbType, Consumer<SQLMethodInvokeExpr> consumer, Predicate<SQLMethodInvokeExpr> filter) -
acceptInsertInto
public static void acceptInsertInto(String sql, DbType dbType, Consumer<SQLInsertInto> consumer, Predicate<SQLInsertInto> filter) -
addSelectItem
-
addSelectItem
-
addSelectItem
public static void addSelectItem(SQLSelectQueryBlock queryBlock, SQLExpr expr, String alias, boolean first) -
refactor
-
hash
-
not
-
normalize
-
normalize
-
normalize
-
forcedNormalize
-
nameEquals
-
nameEquals
-
isValue
-
replaceInParent
-
replaceInParent
-
replaceInParent
-
desensitizeTable
-
sort
重新排序建表语句,解决建表语句的依赖关系- Parameters:
sql
-dbType
-
-
clearLimit
- Parameters:
query
-dbType
-- Returns:
- 0:sql.toString, 1:
-
getLimit
-
getLimit
-
convertTimeZone
-
convertTimeZone
-
splitInsertValues
-