ORACLE里,描述是可口可乐300ML+30ML毫升,我怎么样可以直接抓到330这个数字,只需要数字,用正则法则?

作者&投稿:琴食 (若有异议请与网页底部的电邮联系)
oracle中=>是什么意思呢?~

=> 是 Oracle 中调用 存储过程的时候, 指定 参数名进行调用.
一般是, 某些参数有默认值的时候,你需要跳过某些参数来进行调用。
下面是具体的例子。

参数的默认值
SQL> CREATE OR REPLACE PROCEDURE HelloWorld3 (
2 p_user_name VARCHAR2,
3 p_val1 VARCHAR2 DEFAULT ' Good Moning,',
4 p_val2 VARCHAR2 DEFAULT ' Nice to Meet you'
5 ) AS
6 BEGIN
7 dbms_output.put_line('Hello ' || p_user_name || p_val1 || p_val2 || '!'
);
8 END HelloWorld3;
9 /

Procedure created.

SQL> BEGIN
2 HelloWorld3('Edward');
3 HelloWorld3('Edward', ' Good Night,');
4 HelloWorld3('Edward', ' Good Night,', 'Bye');
5 END;
6 /
Hello Edward Good Moning, Nice to Meet you!
Hello Edward Good Night, Nice to Meet you!
Hello Edward Good Night,Bye!

PL/SQL procedure successfully completed.




指定参数名称调用
此部分使用 “参数默认值”那一小节的存储过程。
用于说明当最后2个参数是有默认的时候,如何跳过中间那个。
SQL> BEGIN
2 HelloWorld3('Edward');
3 HelloWorld3('Edward', p_val1 => ' Good Night,');
4 HelloWorld3('Edward', p_val1 => ' Good Night,', p_val2 => 'Bye');
5 HelloWorld3('Edward', p_val2 => ' HeiHei ');
6 END;
7 /
Hello Edward Good Moning, Nice to Meet you!
Hello Edward Good Night, Nice to Meet you!
Hello Edward Good Night,Bye!
Hello Edward Good Moning, HeiHei !

PL/SQL procedure successfully completed.

这是用于游标判断是否还有数据的:
Oracle游标常用属性:
%FOUND:变量最后从游标中获取记录的时候,在结果集中找到了记录。
%NOTFOUND:变量最后从游标中获取记录的时候,在结果集中没有找到记录。
比如:
12345678910111213141516171819202122232425262728293031Cursor emps is Select * from employees where rownum<6 order by 1; Emp employees%rowtype; Row number :=1; Begin Open emps; /* 打开静态游标 */ Fetch emps into emp; /* 读取游标当前行 */ Loop If emps%found then Dbms_output.put_line('Looping over record '||row|| ' of ' || emps%rowcount); Fetch emps into emp; Row := row + 1; Elsif emps%notfound then Exit; End if; End loop;

楼主您好
正则也是不能计算的,参考这个例子,可以自定义一个function,因为是都ML所以没有用regexp去替换。
declare
numval number;
begin
execute immediate 'select '||replace('300ML+30ML','ML','')||' from dual' into numval;
dbms_output.put_line(numval);
end;

用正则是不可能实现的,毕竟正则不是万能的
单说你这个例子可以实现

万一是345ML+12ML呢


讲解Racle缓冲块(Data block)状态类型
事实上 oralce使用v$bh视图来记录与数据缓冲(data buffer)相关的信息 它详细记录了数据缓冲中每一个数据块(data block)的状态信息 在v$bh视图中的status字段 记录了数据块的状态 在非OPS 非RAC这样的集群环境中 数据块的状态会是下列几种之一 xcur cr read free 用户可以通过如下命令得到数据库的状态信...

安装完oracle12c,oraclejobschedulerorcl服务打不开, 请问怎么查看它是 ...
racle在处理一般事务时并不需要全部启动其后台的所有服务 由于oracle服务所占用系统资源比较大,一般情况下启动监听服务oraclesidtnslistener和数据库服务oracleservicesid 就可以满足数据处理的大部分需求。附表为oracle的所有服务详细描述 注:SID - 数据库标识 HOME_NAME - Oracle Home名称,如OraHome92、Ora...

关于Oracle数据库的几个习题求答案。谢谢
2--c 3--b 7-- 9--c 6--1~8 7--tnsping或者netca 9--dba_indexes (user_indexes)

跪求javaweb 最好是基于MVC框架的方面的毕业论文,要求有源代码和论文...
2 O racle数据库中的角色在Oracle数据库中,角色对管理员来说是一个简单然而却又是功能非常强的机制。当数据库较小,访问数据库的用户不多时,对用户在每一个表上要求的特定访问进行授权还是可以接受的;然而随着数据库的增大和用户的增多,权限管理就比较麻烦了。操作系统采用用户组的概念来描述分配给不同用户的系统...

开发者发现苹果自研M1芯片存在安全性漏洞,这种漏洞可以被修复吗?_百 ...
Martin 将该漏洞称为 M1racles。据报道,它符合计算机漏洞的定义。其官方名称为 CVE-2021-30747。好消息是,虽然 Apple 可能不希望其 M1 Mac 出现任何安全问题,但这个特定漏洞被认为“主要是无害的”。这是因为它不能被利用来感染带有恶意软件的 Mac 或窃取或以其他方式篡改存储在所述 ...

关键用户的组织形式
在B公司实施O racle的ERP系统时,项目启动时就从自动化部和一些管理部门抽调了40余名业务骨干组成关键用户团体,全程负责或配合实施方的模块客户化工作,笔者将这种组织形式称为独立实践团体。如图5.5所示,显示了关键用户作为一个介于开发团队与用户群体之间的实践团体的形式,这种方式如同Nonaka所定义的“ba”(知识创新的共...

畜牧兽医猪毕业论文参考(2)
此外,将抽象、枯涩的内容用图片或影像的形式直观的表达出来,也可以大大节约语言描述讲解的时间,促进学生对教学内容的理解。因此,教师在相同的时间内可以给学生讲授更多的内容,加快讲课节奏。此外,教师还可以适当增加一部分学科前沿的研究动态成果,比如,中药在动物病毒性疾病治疗中的所取得的成效,针灸技术在国外的兽医领域...

配一台并发200个连接数的服务器主机,在线请教。
2、你所使用的应用程序环境,如果是windows带sqlserver,到100用户,处理一个较为复杂的业务都会比较卡。如果换成oracle则可以升到250用户左右。当然,如果是基于web的应用,则可以跑在300用户左右。上述两种环境都需要提前做好优化。3、这个服务器的配置完全能够满足你提出的需求,基于web模式下配合racle数据...

郏县13651565858: oracle中,有个库叫TEST,里面有表A,B,C.如何编写命令查询出分别的记录数量. 如 A:50 B:40 C:30 -
皮狮银黄: select count (*) from A;select count (*) from B;select count (*) from C;

郏县13651565858: mysql库数据导入到oracle库中时遇到问题,mysql里面是VARCHAR(30)类型,oracle里面是VARCHAR2(40)类型 -
皮狮银黄: 什么问题呢?是数据类型还是长度?如果是数据类型的话 mysql、sqlserver是用varchar来存储变长字符数据的 而oracle是使用varchar2来存储变长字符数据的 这个你要习惯.至于长度,主要看字符集吧.一般情况下,如果你mysql和oracle都使用的是同一字符集,那么oracle的40长度肯定能存储mysql的30的数据 但是如果你在mysql用的是gbk,但是在oracle中使用utf8,那么可能就悲剧了(一般也不会出现这种情况吧),可能需要重新安装oracle,更改字符集.而如果mysql用的是utf8,但是在oracle中使用gbk,那么没有问题(可能性比较大的情况)

郏县13651565858: Oracle中如何从表t - user中根据createtime倒序排序获得分页记录第20到30的记录数据
皮狮银黄: select *from ( select t.*, rownum rn from t_user t oreder by t.createtime desc) ttwhere tt.rn >= 20 and tt.rn <= 30

郏县13651565858: oracle :表中字段名为channel - name,数值为91手机助手30:40:30,如何将30:40:30去掉? -
皮狮银黄: select regexp_replace('91手机助手30:40:30', '[[:digit:]]{2}:[[:digit:]]{2}:[[:digit:]]{2}', '') from dual

郏县13651565858: Oracle从'30,40,50'字符串中随机取数. -
皮狮银黄: Select trunc(dbms_random.value(3,5.99))*10 From dual 这样就可以随机取出30,40,50中任一个了~ 回楼下的dbms_random.value(3,5)出来的随机数是带有很多位小数的 是取不出30,40,50中任一个的!

郏县13651565858: 为什么我在oracle参数文件中设置standby -
皮狮银黄: 一 创建一个主库的数据文件备份:用冷备份方式,备份到e:\shared\back 二 创建备用库的控制文件:冷备份之后,打开主库 SQL> connect internal/oracle as sysdba; SQL>startup pfile=d:\oracle\admin\orcl\init.ora; SQL>alter database create ...

郏县13651565858: oracle中的date型时间问题 -
皮狮银黄: 第一个问题是 以为楼主的日期格式不一样 虽然都是日期类型 后面的写法是没有问题的 不过要都是字符串类型 最后再to_date(……) 不明白可以随时问我 希望采纳

郏县13651565858: SQL中哪个字段类别记录日期和哪个字段类别记录时间 -
皮狮银黄: SqlServer的时间格式为:2009-09-08 07:30:03.000,顾名思义就是日期和时间混合在一起的格式,如果用此字段类型只保存日期或时间是不可能的,建议你用varchar类型的...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网