Ashish
Ashish

Reputation: 188

column name in alias is getting shortened

I am using below query to create a table

CREATE TABLE FINAL_TBL AS  SELECT /*+ leading(e) use_hash(t) full(t) parallel(t,2) */
 t.customer_id
 , max(decode(type,'C',t.num,null)) AS CONTACT_TELNO
 , max(decode(type,'H',t.num,null)) AS  HOME_TELNO
 , max(decode(type,'W',t.num,null)) AS  WORK_TELNO
 , max(decode(type,'O',t.num,null))  AS OTHER_TELNO
 from TABLE_A  e, TMP_NUMBERS   t
 where t.num = e.num
 and e.status = 'P'
 group by t.customer_id
 order by 1;

But the table is getting created with the truncated column name as below CUSTOMER_ID CONTACT_TE HOME_TELNO WORK_TELNO OTHER_TELN

Why is So? How can I fix it?

Upvotes: 1

Views: 290

Answers (1)

user5683823
user5683823

Reputation:

It sounds like you must be running this in SQL*Plus... you need to use the command COLUMN with the FORMAT option, like so: column CONTACT_TELEPHONE format a18 (notice no semicolon since this is not a SQL command, it only applies to your interface). The SQL query runs as you expected, but then SQL*Plus formats the result according to its own settings.

Upvotes: 5

Related Questions