我有一个名为email_id的表 ,列名称为email_id,列中有这些电子邮件 id\xe2\x80\x99s
\n\nname@yahoo.com\nname@msn.com\nname@gmail.com\nname@xmsoftware.com \nRun Code Online (Sandbox Code Playgroud)\n\n我只需要这样的域名作为结果
\n\nyahoo\nmsn\ngmail\nxmsoftware \nRun Code Online (Sandbox Code Playgroud)\n\n还有比这更简单的方法(或)任何其他功能吗?
\n\nselect substr(email_id.email_id,(instr(email_id.email_id,'@',1)+1),(instr(email_id.email_id,'.',1) - (instr(email_id.email_id,'@',1)+1))) as domain \nfrom email_id;\nRun Code Online (Sandbox Code Playgroud)\n 当我尝试运行此代码时
DECLARE
TYPE type_a IS
TABLE OF NUMBER INDEX BY PLS_INTEGER;
output NUMBER := 1;
FUNCTION fun_2 RETURN type_a IS
dum type_a;
BEGIN
SELECT
employee_id
BULK COLLECT
INTO dum
FROM
employees;
RETURN dum;
END fun_2;
PROCEDURE proc_1 AS
BEGIN
NULL;
END;
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
错误报告 - ORA-06550:第 22 行,第 8 列:PLS-00103:在预期以下情况之一时遇到符号“文件结束”:
begin function pragma procedure 06550. 00000 - "line %s, column %s:\n%s" *原因:通常是 PL/SQL 编译错误。*行动:
但是当我最后添加 BEGIN END 时它工作正常
DECLARE
TYPE type_a IS
TABLE OF NUMBER INDEX BY PLS_INTEGER;
output NUMBER := …Run Code Online (Sandbox Code Playgroud)