Class JSqlCountSqlParser49

java.lang.Object
org.jeecgframework.minidao.sqlparser.impl.util.v49.JSqlCountSqlParser49

public class JSqlCountSqlParser49 extends Object
sql解析类,提供更智能的count查询sql
Author:
jeecg
  • Field Details

    • KEEP_ORDERBY

      public static final String KEEP_ORDERBY
      See Also:
    • dynamic

      public static Pattern dynamic
      匹配:user.name这样的参数表达式
    • DIAN

      public static String DIAN
    • DIAN_TMP

      public static String DIAN_TMP
  • Constructor Details

    • JSqlCountSqlParser49

      public JSqlCountSqlParser49()
  • Method Details

    • addAggregateFunctions

      public static void addAggregateFunctions(String functions)
      添加到聚合函数,可以是逗号隔开的多个函数前缀
      Parameters:
      functions -
    • getSmartCountSql

      public String getSmartCountSql(String sql)
      获取智能的countSql
      Parameters:
      sql -
      Returns:
    • getSmartCountSql

      public String getSmartCountSql(String sql, String countColumn)
      获取智能的countSql

      处理body-去order by

      Parameters:
      sql -
      countColumn - 列名,默认 0
      Returns:
    • getKeyListByContent

      public static List<String> getKeyListByContent(String content)
      按照动态内容的参数出现顺序,将参数放到List中
      Parameters:
      content -
      Returns:
    • getSimpleCountSql

      public String getSimpleCountSql(String sql)
      获取普通的Count-sql
      Parameters:
      sql - 原查询sql
      Returns:
      返回count查询sql
    • getSimpleCountSql

      public String getSimpleCountSql(String sql, String name)
      获取普通的Count-sql
      Parameters:
      sql - 原查询sql
      Returns:
      返回count查询sql
    • sqlToCount

      public void sqlToCount(net.sf.jsqlparser.statement.select.Select select, String name)
      将sql转换为count查询
      Parameters:
      select -
    • isSimpleCount

      public boolean isSimpleCount(net.sf.jsqlparser.statement.select.PlainSelect select)
      是否可以用简单的count查询方式
      Parameters:
      select -
      Returns:
    • processSelectBody

      public void processSelectBody(net.sf.jsqlparser.statement.select.Select selectBody)
      处理selectBody去除Order by
      Parameters:
      selectBody -
    • processPlainSelect

      public void processPlainSelect(net.sf.jsqlparser.statement.select.PlainSelect plainSelect)
      处理PlainSelect类型的selectBody
      Parameters:
      plainSelect -
    • processWithItemsList

      public void processWithItemsList(List<net.sf.jsqlparser.statement.select.WithItem> withItemsList)
      处理WithItem
      Parameters:
      withItemsList -
    • processFromItem

      public void processFromItem(net.sf.jsqlparser.statement.select.FromItem fromItem)
      处理子查询
      Parameters:
      fromItem -
    • orderByHashParameters

      public boolean orderByHashParameters(List<net.sf.jsqlparser.statement.select.OrderByElement> orderByElements)
      判断Orderby是否包含参数,有参数的不能去
      Parameters:
      orderByElements -
      Returns: