oracle |使用大小写重命名列

oracle |使用大小写重命名列,oracle,Oracle,我有一个定义如下的表: CREATE TABLE GENERAL_STATISTICS.PPLP_LOAD_GENSTAT3 ( NAME VARCHAR2(100 BYTE), START_TIME DATE, END_TIME DATE, ROWS_LOADED VARCHAR2(100 BYTE) ) 我想将PPLP导入数据重命名为其他名称,例如“Report1” 使用case语句,但它不起作用 SELECT PPLP_NAME, (CASE

我有一个定义如下的表:

CREATE TABLE GENERAL_STATISTICS.PPLP_LOAD_GENSTAT3
(
  NAME    VARCHAR2(100 BYTE),
  START_TIME   DATE,
  END_TIME     DATE,
  ROWS_LOADED  VARCHAR2(100 BYTE)
)

我想将PPLP导入数据重命名为其他名称,例如“Report1”

使用case语句,但它不起作用

SELECT PPLP_NAME,
  (CASE
     WHEN PPLP_NAME='PPLP IMPORT DATA' THEN 'BSCS_PPL_IMP_INVOICE'
     WHEN PPLP_NAME='PPLP IMPORT DATA FOR RERUN' THEN 'BSCS_PPL_IMP_USAGE_RERUN'
  END)
FROM  PPLP_LOAD_GENSTAT3

您是否只是缺少了
其他

SELECT PPLP_NAME,
  (CASE
     WHEN PPLP_NAME='PPLP IMPORT DATA' THEN 'BSCS_PPL_IMP_INVOICE'
     WHEN PPLP_NAME='PPLP IMPORT DATA FOR RERUN' THEN 'BSCS_PPL_IMP_USAGE_RERUN'
     ELSE PPLP_NAME
  END)
FROM  PPLP_LOAD_GENSTAT3
但是你现在说你只需要一列,那就是:

SELECT CASE
       WHEN PPLP_NAME='PPLP IMPORT DATA' THEN 'BSCS_PPL_IMP_INVOICE'
       WHEN PPLP_NAME='PPLP IMPORT DATA FOR RERUN' THEN 'BSCS_PPL_IMP_USAGE_RERUN'
       ELSE PPLP_NAME
       END as PPLP_NAME
FROM  PPLP_LOAD_GENSTAT3

您的表
PPLP\u LOAD\u GENSTAT3
没有名为
PPLP\u NAME
的列。你是说姓名吗?同样在数据库术语中,重命名列意味着永久更改表列的定义,例如将加载的
行更改为处理的
行。您在这里没有这样做。请编辑您的问题,并解释您所说的“…但它不起作用”是什么意思。谢谢。不,这不是预期的效果!它创建了一个新的列!当然有,你没有解释不应该!好的,请让我知道这在不创建新专栏的情况下是如何工作的,先生,你是最棒的!:)