`

oracle查询某个字段重复数据以及截取字符、查找字符下标

阅读更多
select b.* ,b.rowid from a_a_nm_shop_12 b right join
(select shop_url From a_a_nm_shop_12 c Group by shop_url having Count(shop_url) > 1 ) T
on b.shop_url = T.shop_url where platform_code ='002'

select substr(ent_url, INSTR(ent_url,'.',1,1), length(ent_url)) as time from z_huhehaote_ent_item



1、拼接字符串

1)可以使用“||”来拼接字符串

1 select '拼接'||'字符串' as str from dual
2)通过concat()函数实现

1 select concat('拼接', '字符串') as str from dual
注:oracle的concat函数只支持两个参数的方法,即只能拼接两个参数,如要拼接多个参数则嵌套使用concat可实现,如:

1 select concat(concat('拼接', '多个'), '字符串') from dual
2、截取字符串

SUBSTR(string,start_position,[length])    求子字符串,返回字符串
解释:string 源字符串
       start_position   开始位置(从0开始)
       length 可选项,子字符串的个数

1 select substr(to_char(sysdate, 'yyyy-mm-dd HH:mi:ss'), 12, 5) as time from dual
1 substr("ABCDEFG", 0); //返回:ABCDEFG,截取所有字符
2 substr("ABCDEFG", 2); //返回:CDEFG,截取从C开始之后所有字符
3 substr("ABCDEFG", 0, 3); //返回:ABC,截取从A开始3个字符
4 substr("ABCDEFG", 0, 100); //返回:ABCDEFG,100虽然超出预处理的字符串最长度,但不会影响返回结果,系统按预处理字符串最大数量返回。
5 substr("ABCDEFG", -3); //返回:EFG,注意参数-3,为负值时表示从尾部开始算起,字符串排列位置不变。
3、查找字符串

INSTR(string,subString,position,ocurrence)查找字符串位置

解释:string:源字符串
        subString:要查找的子字符串
        position:查找的开始位置
        ocurrence:源字符串中第几次出现的子字符串

1 select INSTR('CORPORATE FLOOR','OR', 3, 2) as loc from dual
4、替换字符串

replace(strSource, str1, str2) 将strSource中的str1替换成str2

解析:strSource:源字符串

     str1: 要替换的字符串

     str2: 替换后的字符串

1 select '替换字符串' as oldStr, replace('替换字符串', '替换', '修改') as newStr from dual




--截取指定字符sql

update z_nutrient_food_elements a

set element24=substr(a.foodelements,instr(a.foodelements,'硒'),9)

where a.foodelements like '%硒%' and a.foodelements like '%硒%'

分享到:
评论

相关推荐

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

    这篇博客“一个oracle根据特定字符截取数据”分享了一个实用的方法,适用于那些需要从字符串字段中提取部分信息的情况。通过SQL查询,我们可以高效地完成这项任务。 在Oracle SQL中,有多个内置函数可以帮助我们...

    oracle按特定字符截取字符串

    oracle,按特定字符,截取字符串,直接出结果 oracle,按特定字符,截取字符串,直接出结果oracle,按特定字符,截取字符串,直接出结果

    Oracle查找字符串中某字符出现的次数

    select f_find('Ap@2233ll@@l@@','@') from dual 返回结果为5,代表‘@’在该字符串中出现5次。 同理 select f_find('Ap@223SWEQQQ3ll@@l@@','Q') from dual---返回3,代表Q在字符串中出现了3次, select f_find('我...

    Oracle查询指定表的所有字段名和数据类型SQL

    在Oracle数据库管理中,有时我们需要了解某个特定表的所有字段名称以及它们对应的数据类型等信息。这对于理解表结构、进行数据迁移或编写更为精确的SQL语句非常有帮助。下面将详细介绍如何通过SQL查询来获取这些信息...

    oracle遍历数据库查找字符串

    本文将深入探讨如何使用Oracle遍历数据库查找字符串,以及一个简化此过程的工具。 标题"Oracle遍历数据库查找字符串"暗示了一个实用的解决方案,它允许用户快速搜索Oracle数据库中的特定文本字符串,无需手动编写...

    Oracle字段转字符串/多行记录合并/连接/聚合字符串的几种方法

    在Oracle数据库中,有时我们需要将多个字段值转换为单个字符串,或者将多行记录合并成一行,这在数据处理和报告生成时尤其常见。Oracle提供了多种方法来实现这一目标,包括使用内置函数、PL/SQL过程以及一些高级特性...

    oracle中字符串截取

    ### Oracle中字符串截取知识点详解 #### 一、概述 在Oracle数据库中,对字符串进行截取是一项常用且重要的操作。本文将详细介绍Oracle中的字符串截取功能及其应用场景,包括常用的`INSTR`和`SUBSTR`函数,并通过...

    Oracle中如何用SQL检测字段是否包括中文字符

    有一个同事的数据迁移程序有个问题,没有考虑中文编码字符,由于迁移的表有几千万数据,但是有中文的记录集很少,问我能否找出有中文内容的记录数。首先我想到的是采用检测每个字节ASCII的方式,这样的话需要写一个...

    oracle某个字段多行记录转化为一行

    根据提供的信息,本文将详细介绍如何在Oracle数据库中将某个字段的多行记录转换为一行记录的方法。这种方法在处理大量数据时非常有用,特别是在需要将多个值汇总到一个字段中的场景下。 ### 标题理解:“oracle某个...

    oracle数据库截取字符串

    Oracle数据库提供了多种截取字符串的方法,本文将介绍 substr 和 instr 两个常用函数,以及 case when then else end 语句的使用。 一、substr 函数 substr 函数用于截取字符串的一部分,语法为 `substr(string, ...

    Oracle截取字符串去掉字段末尾指定长度的字符

    本文将详细讨论如何使用Oracle的内置函数来截取并处理字符串,特别是如何去掉字段末尾指定长度的字符。 首先,Oracle提供了两种主要的函数来获取字符串的长度:`LENGTHB()` 和 `LENGTH()`。这两个函数的主要区别...

    oracle实现多字段匹配一个关键字查询(本人亲测,没毛病)

    ### Oracle实现多字段匹配一个关键字查询 在Oracle数据库中,有时我们需要从多个字段中搜索包含特定关键字的数据。这种需求在很多场景下都非常常见,比如在CRM系统中搜索客户信息、在文档管理系统中查找文档等。...

    oracle 查询重复数据

    本文将深入探讨如何在Oracle数据库中查询重复数据,理解SQL语句背后的逻辑,并掌握其实现方法。 ### Oracle查询重复数据的核心概念 #### 1. 重复数据的定义 在数据库术语中,重复数据通常指的是在数据集中存在一个...

    ORACLE中CLOB字段转String类型

    本文将详细介绍如何在Oracle中实现CLOB字段到字符串类型的转换,并探讨其中的关键技术和注意事项。 #### 一、CLOB概述 1. **定义**: - `CLOB`是Oracle数据库提供的一种特殊的数据类型,用于存储大文本数据。 - ...

    oracle查询blob字段照片(jpeg) 像素大小sql

    这段SQL语句的作用是:从表`data`中选择字段`dataBlob`,并且使用`dbms_lob.substr`函数截取Blob数据中第164位开始的4个字符。如果这4个字符与'01B90166'相匹配,则返回该行记录。 #### 3.2 解析JPEG图片尺寸 一旦...

    oracle实现多字段匹配一个关键字查询

    这种方法通过使用Oracle中的字符串连接操作符“||”来合并多个字段值,形成一个新的字符串,然后对该字符串执行LIKE查询。 #### SQL语句示例: ```sql SELECT * FROM table_name WHERE ('column1' || 'column2') ...

    oracle数据库字段值自动加1

    Oracle 数据库中,字段值自动加 1 是一个常见的需求,特别是在数据插入时需要自动生成唯一标识符的情况下。下面将详细介绍如何实现 Oracle 数据库字段值自动加 1。 首先,需要创建一个表来存储数据。在本示例中,...

    如何用oracle 截取两个相同字符串之间的字符

    在实际工作中经常遇到截取两个相同字符串之间的字符的oracle问题,以下是相关语句

    oracle存储过程实现字符串截取

    例如:字段为1,2,3,4,5 截取之后为 1 2 3 4 5

Global site tag (gtag.js) - Google Analytics