为了账号安全,请及时绑定邮箱和手机立即绑定

请问oracle index命名默认多少个字符?

请问oracle index命名默认多少个字符?

偶然的你 2019-07-08 10:06:09
oracle index命名默认多少个字符
查看完整描述

6 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

是的,主键是有序唯一的,所以oracle默认给它一个索引使查询的时候更快速的定位目标数据,唯一键也是同理,通过索引查询是直接利用rowid确定目标数据,数据唯一的话才能体现索引的便利。

查看完整回答
反对 回复 2019-07-13
?
跃然一笑

TA贡献1826条经验 获得超6个赞

select substr('t.col',instr('t.col','@-@'),instr('t.col',',') - 1) col from 表名 t

//注:‘@-@’是为了保证col字段里逗号前面不存在这个@-@字符(你可以随便写一个,保证不存在就行),所以查询的时候会从第一位开始截取。不然万一存在了这个字符,它会从这个字符开始截取。

查看完整回答
反对 回复 2019-07-13
?
慕娘9325324

TA贡献1783条经验 获得超4个赞

可以用substr和instr套嵌查询出来
select substr(字段名,1,instr(字段名,',',1,1)-1) from tab;
如果你的字段是数值型,先用to_char()转换成字符型
select substr(to_char(字段名),1,instr(to_char(字段名),',',1,1)-1) from tab;

查看完整回答
反对 回复 2019-07-13
?
DIEA

TA贡献1820条经验 获得超2个赞

select substr(字段名,instr(字段名,',')+1,length(字段名)-instr(字段名,',')) from 表名

instr函数是找到逗号的位置的函数instr(字符串.要查找的字符串) 得到的是起始位置
substr是截取函数 substr( 字符串,起始位置,截取长度)

查看完整回答
反对 回复 2019-07-13
?
守着一只汪

TA贡献1872条经验 获得超3个赞

在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。
语法如下:instr( string1, string2 [, start_position [, nth_appearance ] ] )
string1 源字符串,要在此字符串中查找。
string2 要在string1中查找的字符串.
start_position 代表string1 的哪个位置开始查找。此参数可选,如果省略默认为1. 字符串索引从1开始。如果此参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引。
nth_appearance 代表要查找第几次出现的string2. 此参数可选,如果省略,默认为 1.如果为负数系统会报错。



查看完整回答
反对 回复 2019-07-13
  • 6 回答
  • 0 关注
  • 884 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信