/**
* 截取hql from以后的部分
* @param removeOrders
* @return
*/
protected String removeSelect(String hql) {
return hql.substring(getBeginPos(hql.toLowerCase(),0));
}
protected int getBeginPos(String lhql,int beginPos){
if(lhql.indexOf("(",beginPos)!=-1&&lhql.indexOf("(",beginPos)<lhql.indexOf("from",beginPos)){
beginPos=lhql.indexOf(")",beginPos)+1;
return getBeginPos(lhql,beginPos);
}else{
return lhql.indexOf("from",beginPos);
}
}
前台只传过来一个sql,我想通过自己的方法截取from以后的部分
这是我写的一个方法,支持from前带有一层()的截取,当sql语句有嵌套时该怎么写呢?
假如 select (select count(*)...) from ...
如何写呢?
分享到:
- 2008-08-01 16:08
- 浏览 1019
- 评论(0)
- 论坛回复 / 浏览 (0 / 1228)
- 查看更多
相关推荐
如果结果集长度大于`count`,则存在下一页,且需要截取前`count`条记录。 5. **返回结果**:最后,更新`dto`对象中的`prev`和`next`属性,分别代表上一页和下一页的页码,便于前端界面显示。 #### 技术要点 1. **...
在SQL(Structured Query Language)中,日期类型和常用的函数、空值处理、分页语句以及多表关联是数据库操作的基础且重要的知识点。下面将详细阐述这些内容。 1. **日期类型** SQL中的日期时间类型包括DATE、TIME...
这里首先从原始 SQL 查询语句中截取 `FROM` 部分,构造出一个新的 SQL 查询来获取总的记录数。这是实现分页的基础,因为我们需要知道数据总量以便计算出总共需要多少个页面。 #### 2. 计算分页参数 ```php // 计算...
以上所述的操作都可以在SELECT语句中组合使用,形成复杂的查询语句。 #### 十三、连接查询 连接查询是指从两个或多个表中提取数据。 ##### 13.1 SQL92语法 使用`JOIN`关键字,例如:`SELECT * FROM table1 JOIN ...
使用`strstr`函数截取SQL语句中"from"之后的部分,然后构造一个新的SQL查询,用于计算数据表中的记录总数。这个新的SQL语句是`"select count(*) as ids " . $pagesql`,它返回一个包含唯一字段`ids`的结果集,其值...
在MySQL中,可以使用`LIMIT`子句结合这两个参数来实现数据截取,例如: ```sql SELECT * FROM table LIMIT ($CurrentPageID - 1) * $PageSize, $PageSize; ``` 这个SQL语句将返回第($CurrentPageID - 1) * $PageSize...
- 使用 `SqlConnection` 类创建数据库连接,并通过执行 SQL 查询来获取数据,例如 `strSql_Count="Select Count(*) from T_Book"` 这条语句用于计算表 T_Book 中的记录总数。 - `SqlHelper.ExecuteScalar` 方法用于...
字符串处理可能包括截取、替换、查找等操作,而合计操作则可能涉及到`SUM`、`AVG`、`COUNT`等聚合函数。 "20100301_ sql_server_Profiler用法.sql"文件专门探讨了SQL Server Profiler的使用。Profiler是SQL Server...
- **SQL语句**: 截取前三个字母: - `SELECT SUBSTR(ename, 1, 3) FROM emp;` #### 16. 截取每个雇员姓名的后三个字母 - **知识点**: 使用`SUBSTR`函数结合`LENGTH`函数。 - **SQL语句**: 截取后三个字母: - `...
实例118 验证IP地址是否有效 149 实例119 统计关键字的查询结果 150 实例120 计算查询操作的执行时间 151 实例121 查询关键字描红 152 实例122 判断上传文件的类型 153 实例123 判断邮政编码格式是否正确 154 2.10 ...
实例118 验证IP地址是否有效 149 实例119 统计关键字的查询结果 150 实例120 计算查询操作的执行时间 151 实例121 查询关键字描红 152 实例122 判断上传文件的类型 153 实例123 判断邮政编码格式是否正确 154 2.10 ...
- 直接在 `SELECT` 语句中计算常量值。 - **字段间的计算** - 对字段进行加减乘除等运算。 - **数据处理函数** - 使用内置函数如 `ROUND`, `TRUNCATE` 等。 - **字符串的拼接** - 使用 `CONCAT` 或 `+` ...
- 可以在 `SELECT` 语句中使用算术表达式。 - 示例:`SELECT ID + 1 AS NEXT_ID FROM MY_TABLE;` ##### 5.7 使用NVL函数处理NULL值 - 使用 `NVL` 函数可以将 `NULL` 值替换为指定的默认值。 - 示例:`SELECT NVL...
5. `SUBSTRING_INDEX(str, delim, count)`:根据分隔符`delim`来截取子串,`count`表示分隔符出现的次数,正数从前向后截取,负数从后向前截取。 除了这些基本操作,还有其他如`REPLACE(str, find_string, replace_...
如果指定列名,则DISTINCT只能用于COUNT(列名),DISTINCT不能用于COUNT(*)。 如:Select Distinct name From s_dept; Select Distinct dept_id,title From s_emp; 文本处理: TRIM()/LTRIM()/RTIRM():去空格。...
- 分页(LIMIT和OFFSET):理解如何分页显示数据,以提高数据检索效率和用户体验。 3. **第4章 单行函数** - 数学函数:如加减乘除、幂运算等,以及日期和时间处理函数。 - 字符串函数:如CONCAT、SUBSTR、UPPER...
- 直接运行文件中的SQL语句: 可以通过`@filename.sql`命令直接执行文件中的SQL语句。 #### 三、演示数据表结构 - **表**是关系型数据库中最基本的数据存储单元,它由一系列列组成,每列代表不同类型的数据。 - ...