小编Moh*_*mon的帖子

00984. 00000 - "这里不允许列"

我试图创建以下PL/sql但收到错误

创建新的匿名PL/SQL块:

  • 首先,从employees表中选择员工总数,平均工资,最高工资和最低工资到PL/SQL变量.平均工资应四舍五入为整数

  • 然后使用以下列创建表统计信息:

    the_date   DATE,                                        
    emp_num NUMBER                              
    avg_sal   NUMBER                                    
    max_sal   NUMBER                                
    min_sal   NUMBER          
    
    Run Code Online (Sandbox Code Playgroud)
  • 然后使用上面提到的PL/SQL变量将今天的日期,员工总数,平均工资,最高工资和最低工资的值插入统计表中

  • 最后在屏幕上打印.

我的代码:

DECLARE
 v_emp_no Number;
 v_av_sal Number;
 v_mx_sal Number;
 v_mn_sal Number;
BEGIN
 SELECT count(employee_id) as total_emp, ROUND(AVG(salary))as avg_sal, MAX(salary)as max_sal, MIN(salary)as min_sal
 INTO v_emp_no, v_av_sal, v_mx_sal, v_mn_sal
 FROM employees;
 EXECUTE IMMEDIATE 'CREATE TABLE stats (the_date DATE, emp_num NUMBER, avg_sal NUMBER, max_sal NUMBER, min_sal NUMBER)';
 EXECUTE IMMEDIATE 'INSERT INTO stats values (sysdate, v_emp_no, v_av_sal, v_mx_sal, v_mn_sal)';
 EXECUTE IMMEDIATE 'DROP TABLE stats';
 DBMS_OUTPUT.PUT_LINE('Today our company has '||v_emp_no||' …
Run Code Online (Sandbox Code Playgroud)

oracle plsql dynamic-sql

-2
推荐指数
1
解决办法
3180
查看次数

标签 统计

dynamic-sql ×1

oracle ×1

plsql ×1