Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Convert columns into row of a table

User_40B57Apr 19 2021

Need to convert columns into row for the below mentioned table
Scripts:
CREATE TABLE OPTIM.EMP
(
EMP_NO NUMBER,
ENAME VARCHAR2(100 BYTE),
DNO NUMBER
);
select * from emp;
image.png

Query used to convert columns to row is as below:
SELECT dno, LISTAGG(ename,',') WITHIN GROUP (ORDER BY ename) AS employees FROM emp GROUP BY dno ORDER BY dno;
Got output as below :
image.png

But my expected output should be as below:
image.png

I want my data to be displayed in separate cell (Highlighted in Green color).
Basically delimiter need to be replaced with next cell.
I have also tried with PIVOT it doesn't worked.
SELECT *
FROM (SELECT emp_no,ename,dno
FROM emp)
PIVOT (MAX(ename) FOR dno IN (30));

Comments

Hadar Paiss

Hi,
There are few issues in the upgrade that might arise concerning logins:
with default install oracle 19 password are case sensitive
The password 'format' changed. You can check in dba_users
You might need to add to sqlnet.ora the parameter SQLNET.ALLOWED_LOGON_VERSION_SERVER=11
look into https://docs.oracle.com/en/database/oracle/oracle-database/18/spmsu/finding-and-resetting-user-passwords-10g-password-version.html#GUID-D7B09DFE-F55D-449A-8F8A-174D89936304
It will cover some of it.
Regards,
Hadar

User_YAOJZ

Thanks Hadar. The password issue I knew about. I added the code to SQLNET.ORA in both the oracle_home/network/admin folder and the instantclient/network/admin folder and now get an ORA-12504 error.
I added both a tnsnames.ora and listener.ora files to both folders (with appropriate settings) but can't get past the 12504 error.
Any ideas? Greatly appreciated!
tnsnames.ora (orcltest is name of database, brian-surface4 is name of PC)
LISTENER_ORCLTEST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Brian-Surface4)(PORT = 1521))

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)

ORCLTEST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Brian-Surface4)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcltest)
)
)
listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oracle\WINDOWS.X64_193000_db_home)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\oracle\WINDOWS.X64_193000_db_home\bin\oraclr19.dll")
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Brian-Surface4)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)

User_B9CRX

Just to clarify, do you mean you upgraded the database the app is still at Legacy 11g app client? You are testing this where the database and client are on the same host?

1 - 3

Post Details

Added on Apr 19 2021
6 comments
123 views