可以这样设置别名,但是不能在本层语句的条件中使用。这个别名是对外的。
创新互联公司是一家专业提供宜春企业网站建设,专注与做网站、成都网站设计、成都h5网站建设、小程序制作等业务。10年已为宜春众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
如果你嵌套一层就没有问题了。
select * from (select eno,ename en from emp) where en='John'
别名用”as“即可,然后as也可以省略掉。举例如下:
sql:select
a.name
as
username,a.age
as
userage
from
tablename
as
a;
解释:给tablename命名为a
,之后给a表中的name命名为username,age命名为userage
。
其中”as“都是可以省略的,即:select
a.name
username,a.age
userage
from
tablename
a;
在Oracle中as关键字不能用于指定表的别名,在Oracle中指定表的别名时只需在原有表名和表的别名之间用空格分隔即可,但可以用于指定列的别名,但在存储过程中如果列的别名与原有列名相同,在运行时会报错(编译时不会出错),其他情况下列的别名可以与列名本身相同。
as加了以后可以定义字段别名,不加as无法命名别名。操作方法如下:
1、首先在oracle中as的作用主要是为表中的字段添加别名,如下图。
2、在命名别名的时候也可以区分大小写,不过要加双引号"",如果不加双引号只是首字母大写的话,在查询结果的时候会全部被替换成大写。
3、如果定义的别名为多个字符,如果不加双引号在语法上会报错误。
4、在使用as为列定义别名的时候,as关键字是可以省略的。
5、最后也可以通过as关键字定义中文别名,不过为了规范一般不经常使用中文别名。
使用AS在该字段后面空一格,使用AS空格别名,这种方式来起别名给字段。
表的别名要在from子句中指定,并且别名位于查询中其余列之前。
(2)使用表的别名可以减少查询中输入的文本的数量,并且可能还会减少在输入过程中的错误。
用SELECT语句从表中提取查询数据。语法为
SELECT [DISTINCT] {column1,column2,…} FROM tablename WHERE {conditions} GROUP BY {conditions} ORDER BY {expressions} [ASC/DESC];
说明:SELECT子句用于指定检索数据库的中哪些列,FROM子句用于指定从哪一个表或视图中检索数据。
SELECT中的操作符及多表查询WHERE子句。(LIKE,IS,…)
WHERE子句中的条件可以是一个包含等号或不等号的条件表达式,也可以是一个含有IN、NOT IN、BETWEEN、LIKE、IS NOT NULL等比较运算符的条件式,还可以是由单一的条件表达通过逻辑运算符组合成复合条件。
ORDER BY 子句
ORDER BY 子句使得SQL在显示查询结果时将各返回行按顺序排列,返回行的排列顺序由ORDER BY 子句指定的表达式的值确定。
1) UPDATE tablename SET {column1=expression1,column2=expression2,…} WHERE {conditions};
例如:S QLUPDATE EMP
SET JOB =’MANAGER’
WHERE ENAME=’MAPTIN’;
SQL SELECT * FROM EMP;
UPDATE子句指明了要修改的数据库是EMP,并用WHERE子句限制了只对名字(ENAME)为’MARTIN’的职工的数据进行修改,SET子句则说明修改的方式,即把’MARTION’的工作名称(JOB)改为’MARAGER’.
2) INSERT INTO tablename {column1,column2,…} VALUES {expression1,expression2,…};
例如:SQLSELECT INTO DEPT(DNAME, DEPTNO)
VALUES (‘ACCOUNTING’,10)
3) DELETE FROM tablename WHERE {conditions};
例如:SQLDELETE FROM EMP
WHERE EMPNO = 7654;
DELETE命令删除一条记录,而且DELETE命令只能删除整行,而不能删除某行中的部分数据.