sql - 星号在oracle sql中的使用

标签 sql oracle sqlplus

为什么当星号本身在 SELECT 子句中时,在 oracle sql 中使用星号完全有效,但当 SELECT 中有其他表达式时会导致错误?

例如:

select * from table1  -- is ok

但是:

select field, * from table -- is not ok

最佳答案

Oracle 仅在没有其他列时才允许使用“裸”星号。

否则,您需要对其进行限定:

select t.field, t.*
from table1 t;

我怀疑原因是 Oracle 认为 select * 是一个完整的子句,而不是 * 是所有列的缩写。

关于sql - 星号在oracle sql中的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55271343/

相关文章:

sql - SQL中如何按日期获取特定月份的记录

mysql - 将文本文件数据导入 MySQL 中的行

oracle - 如何将 Oracle 过程的参数默认值设置为选择结果?

sql - 有没有办法在 SQL 中将每个值作为一行返回

Oracle 在更新表时挂起

linux - 可以传递给 SQL*Plus 的命令行参数的最大长度?

mysql - 使用 SQL 在 Magento 中检索产品详细信息

sql - 如何在SQL命令中将数字转换为nvarchar

sql - 与 CLOB 一起使用的类似 UTL_MATCH 的函数

sql - 我可以在 Oracle 中使用 UTILS 吗?