Sql 创建具有Exception条件的视图
示例我想创建一个视图名测试 在此之前我已经创建了一个视图 视图名称:客户 内部客户视图:Sql 创建具有Exception条件的视图,sql,oracle,Sql,Oracle,示例我想创建一个视图名测试 在此之前我已经创建了一个视图 视图名称:客户 内部客户视图: //CUSTOMER NAME ID ADDRESS AGE SEX TELNO EMAIL ----------------------------------------------------------------------- CHRIS 1 12321312 21 F
//CUSTOMER
NAME ID ADDRESS AGE SEX TELNO EMAIL
-----------------------------------------------------------------------
CHRIS 1 12321312 21 F 646885 ascs@gmail
JOHN 2 SADASDSA 23 M 5452131 asd@gmail
MAY 3 LKJLKJLKJ 32 F 645643 cxz@gmail
所以我想创建一个视图名测试,它将存储除TELNO电子邮件之外的CUSTOMER内部的所有列
所以我使用了这个查询:
CREATE VIEW TEST AS
SELECT * FROM CUSTOMER
EXCEPT
SELECT TELNO,EMAIL FROM CUSTOMER;
但我工作失败,错误就出来了。SQL命令未正确结束并指向,除了,出了什么问题?您必须明确列出所有需要的列:
CREATE VIEW TEST AS
SELECT NAME, ID, ADDRESS, AGE, SEX
FROM CUSTOMER;
无法从*
列表中排除某些列
除外
是SQL Server中的运算符。Oracle中的等效项是减。但是,这在行级别有效,而不是在列级别
如果要获取表中除这两列以外的所有列,可以使用all\u tab\u columns
:
select column_name
from all_tab_columns
where lower(table_name) = 'customer' and
lower(column_name) not in ('telno', 'email');
然后,您可以将它们粘贴到select
子句中。您不是刚刚发布了这篇文章,并获得了问题的答案吗?答案不会改变,因为您已删除上一个问题并重新发布。(如果你继续这样做,你会被系统自动禁止——删除的帖子会被考虑在内,所以请小心)。结果未返回选定的行,这是视图,不是表。@user3553846。只需将创建视图代码>在选择之前
。我无法理解您的意思,但我提到的没有选择行