[英]Invalid identifier, attribute in oracle
SELECT C1.CERT_ANNOUNCEMENT
FROM EMPLOYEE C1, TEACHER C1, TEACHER_CERT_INT C1, CERTIFICATION C1
ORDER BY EMP_LNAME, EMP_FNAME;
编写查询并保存为视图,为数据库中所有获得认证的教师创建公告文本。 您创建的属性应命名如下,并且您创建的字符串必须与解决方案中的完全一致才能获得完全信任。 先按姓然后按名字排序。 它应该被命名为 CERT_ANNOUNCEMENT 但这不是 ER DIAGRAM 中的属性。
不知道如何创建它,因为当我运行它时它说无效标识符。 任何帮助表示赞赏。
您应该为每个表使用唯一的别名,并使用on
子句进行连接并避免完整的笛卡尔积,并更好地阐述关于 SO 的问题。
该作业要求您创建一个视图,因此您需要使用 CREATE VIEW 语法。
该视图使用来自多个表的数据。 您需要使用连接条件来确保记录被有意义地链接。 这通常意味着将主键连接到外键。
给每个表一个唯一的别名以避免编译错误。
该视图应该向所有获得证书的教师显示一条消息。 您需要通过将表格中的列与样板文本连接起来来形成此公告。 为该消息提供cert_announcement
的列别名。
您没有发布任何表格结构,所以我已经猜到了您的表格列的名称。 同样是公告的实际文本。 所以你需要自己弄清楚确切的细节。 至少这样你会赢得一些你会得到的分数。
create or replace view full_credit_please as
select 'Teacher '
||emp.emp_fname||' '||emp.emp_lname
||' was awarded '||cert.certifcate_name
||' on '|| to_char(cert.award_date, 'DD-MON-YYYY')
as cert_announcement
from employee emp
join teacher tch
on tch.emp_id = emp.emp_id
join teacher_cert_int tc
on tc.tch_id = tch.tch_id
join certification cert
on cert.cert_id = tc.cert_id
order by emp.emp_lname, emp.emp_fname;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.