`

SQL Server中substring Oracle中substr截取汉字时的长度问题

 
阅读更多

这两个函数截取汉字时都是按汉字字数来的, 如果你想用字节长度请用下面的函数

 

select substring('北京市海淀区', 1, 6);
select substring(convert(text, '北京市海淀区'), 1, 6);

 

select substr('北京市海淀区',1, 6) from dual;
select substrb('北京市海淀区',1, 6) from dual;

分享到:
评论

相关推荐

    从Sql Server迁移到 Oracle 过程中代码需要调整的地方

    - 字符串截取:SQL Server的`SUBSTRING()`在Oracle中对应`substr()`。 - 数据类型转换:SQL Server的`CONVERT()`在Oracle中可能需要`TO_CHAR()`或`TRUNC()`。 - 时间间隔计算:`DATEDIFF`在Oracle中可以使用`...

    oracle,sqlserver及mysql对比

    截取字符串方面,Oracle 使用 SUBSTR 函数,而 MySQL 使用 SUBSTRING 函数。在 MySQL 中,从子句后的表如果是子查询形式,那么后面必须有别名。 事务 Oracle 很早就完全支持事务。MySQL 在 InnoDB 存储引擎的行级...

    sql server 和oracle函数

    根据给定的信息,本文将对SQL Server与Oracle数据库系统中的函数进行详细对比分析,主要涉及数学函数、字符函数以及日期函数。以下是对这些知识点的具体展开: ### 数学函数 #### 绝对值 - **SQL Server**: 使用 `...

    SQLServer和Oracle常用函数对比

    本文将详细介绍SQLServer与Oracle数据库管理系统中的常用数学、字符串处理及逻辑判断等函数,并通过具体的示例对比它们之间的差异。 #### 数学函数 ##### 1. 绝对值 - **SQLServer**: `SELECT ABS(-1) AS Value;` ...

    ORACLE与SQLSERVER函数异同比较

    - **子串提取**: `SUBSTR`函数在Oracle中用于提取字符串的一部分,在SQL Server中则使用`SUBSTRING`函数。 - **字符替换**: Oracle中的`REPLACE`函数被SQL Server中的`STUFF`函数所替代。 - **首字母大写**: `...

    一个oracle根据特定字符截取数据

    在Oracle SQL中,有多个内置函数可以帮助我们实现字符截取。主要涉及以下两个关键函数: 1. **SUBSTR()** 函数:此函数用于从字符串中提取指定长度的子串。它的语法是 `SUBSTR(string, start_position, length)`。`...

    在SQL查询中如何截取字符串后转成数值型?

    例如,在Microsoft SQL Server中,可以使用`SUBSTRING`函数;而在MySQL中,则应使用`SUBSTR`或`MID`函数。 #### SUBSTRING 函数 `SUBSTRING`函数在SQL Server和PostgreSQL等数据库中用于从字符串中提取子串。其...

    Sql Server中Substring函数的用法实例解析

    SQL 中的 substring 函数是用来截取一个栏位资料中的其中一部分。 例如,我们需要将字符串’abdcsef’中的‘abd’给提取出来,则可用substring 来实现: select substring('abdcsef',1,3) 结果: 'abd' 括号中数字...

    sqlserver与oracle函数的对比

    - 在截取字符串时,SQL Server 使用 `SUBSTRING`,Oracle 有 `SUBSTR`。 2. **日期和时间函数** - SQL Server 中,`GETDATE` 获取当前日期和时间,`DATEADD` 和 `DATEDIFF` 分别用于添加或减去日期部分,Oracle ...

    SQL Server和Oracle的常用函数对比.rar

    - `SUBSTRING()`在SQL Server中截取字符串,Oracle对应的是`SUBSTR()`。 - `REPLACE()`在SQL Server中替换字符串中的子串,Oracle也有同名的`REPLACE()`函数。 2. **数值运算函数**: - 两个系统都提供`ROUND()`...

    Oracle和SQL Server的一些区别(函数和存储过程)

    而在SQL Server中,虽然类型相对较少,但使用起来更加简单。 - **流程控制结构**:两种数据库均支持IF/ELSE、CASE等基本的流程控制结构,但在具体语法上有细微差别。 - **异常处理**:Oracle提供了一个完整的异常...

    oracle与sqlserver的区别.docx

    - 字符串截取:Oracle 使用 `SUBSTR(字符串 | 数据列,截取开始索引,截取结束索引)`,而 SQL Server 使用 `SUBSTRING(字符串 | 数据列,截取开始索引,截取结束索引)`。 - 长度函数:Oracle 中计算字符串长度使用...

    Access、SQL Server、Oracle三种数据库的区别.doc

    - Oracle:`SubStr`用于截取字符串,`Upper`和`Lower`同样用于大小写转换,`InStr`与SQL Server中的功能相同。 4. **条件判断**: - Access:使用`IIF`函数进行条件判断。 - SQL Server:使用`CASE WHEN THEN`...

    oracle和sql的语法区别大

    - Oracle 使用CONCAT进行字符串拼接,而在SQL Server中可以直接使用表达式相加的方式进行字符串拼接。 - **CHR, CHAR** - Oracle 提供了CHR和CHAR函数用于将ASCII码值转换为字符,而SQL Server没有对应的直接函数...

    用SQL语句截取字符串

    - 在不同的SQL方言中(如MySQL、Oracle、SQL Server等),`SUBSTR()`函数的具体实现可能存在差异。例如,某些版本的SQL可能使用`SUBSTRING()`函数而不是`SUBSTR()`。 - 起始位置的计数方式也可能会有所不同。有些...

    Oracle与Sql-Server函数对照.docx

    本文档旨在对比并解析Oracle数据库与Microsoft SQL Server数据库中常用函数的区别与等效性。两者虽然都是关系型数据库管理系统(RDBMS)的重要组成部分,但在具体实现上存在差异。通过本篇文章,读者可以更好地理解...

    oracle和SQL的语法区别

    Oracle:GROUP BY后面可以跟HAVING条件,但SQL Server中HAVING条件应放在WHERE之后,且不能直接引用聚合函数。 5. 条件判断: Oracle:使用DECODE()函数进行多条件判断,SQL Server则使用CASE语句。 三、索引与...

    数据库中的substring

    2. **SQL Server**中的`substring`函数也接受这三个参数,但起始位置可以为负数,表示从字符串末尾开始计数。 3. **Oracle**数据库中,`substr`函数接受两个或三个参数,如果只提供两个参数,它将返回从指定位置到...

Global site tag (gtag.js) - Google Analytics