Solved

Problem wit spool

Posted on 2013-12-13
10
399 Views
Last Modified: 2013-12-13
Hi, from the script test.sh I have the next spool:

2013/12/11 23:55:00!13006!PSM_4___P      Calculo Demanda!0!#..!0!#..!!0!#..!!0!#..!
2013/12/11 23:55:00!13007!PSM_4___Q      Calculo Demanda!0!#..!0!#..!!0!#..!!0!#..!
UTCTIME!POINTNUMBER!POINTNAME!VALUE_INST!TLQ_INST!VALUE_PROM!TLQ_PROM!UTCTIME_MAX!VALUE_MAX!TLQ_MAX!UTCTIME_MIN!VALUE_MIN!TLQ_MIN!

Open in new window


But I need change the order of output, It must show:

UTCTIME!POINTNUMBER!POINTNAME!VALUE_INST!TLQ_INST!VALUE_PROM!TLQ_PROM!UTCTIME_MAX!VALUE_MAX!TLQ_MAX!UTCTIME_MIN!VALUE_MIN!TLQ_MIN!
2013/12/11 23:55:00!13006!PSM_4___P      Calculo Demanda!0!#..!0!#..!!0!#..!!0!#..!
2013/12/11 23:55:00!13007!PSM_4___Q      Calculo Demanda!0!#..!0!#..!!0!#..!!0!#..!

Open in new window


Could you help me?,  Where is the error?
Regards
Test.sh
0
Comment
Question by:carlino70
  • 4
  • 3
  • 2
  • +1
10 Comments
 
LVL 23

Expert Comment

by:David
ID: 39717072
Drop the "ORDER BY 1" sort, in your character set the numerals have a lower value than alpha.  However, that will drop your nice sort.

Which char set are you using?
0
 

Author Comment

by:carlino70
ID: 39717110
without "ORDER BY 1" it works,

but I need to see the output in order ascending order by "utctime"the output in order ascending from utctime

select * from database_properties
where PROPERTY_NAME in ('NLS_CHARACTERSET',
'NLS_NCHAR_CHARACTERSET');

PROPERTY_NAME|PROPERTY_VALUE|DESCRIPTION
NLS_CHARACTERSET|AL32UTF8|Character set
NLS_NCHAR_CHARACTERSET|AL16UTF16|NCHAR Character set

Open in new window

0
 
LVL 32

Expert Comment

by:awking00
ID: 39717116
The problem is the order by 1 which sets the order after the union. Change it to order by 1 desc or just eliminate it altogether.
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 32

Expert Comment

by:awking00
ID: 39717123
Sorry, I didn't see the other posts before I submitted.
0
 
LVL 32

Expert Comment

by:awking00
ID: 39717137
Since you're using a yyyy/mm/dd hh24:mi:ss date format, you'll be okay (other date formats might not work).
0
 
LVL 23

Expert Comment

by:David
ID: 39717142
Show us your session values for these two variables:

echo $LC_CTYPE      # accept iso-latin-1 characters
echo $LC_COLLATE      # collate in strict numeric order
0
 

Author Comment

by:carlino70
ID: 39717153
I don't see those variables
0
 
LVL 68

Accepted Solution

by:
woolmilkporc earned 500 total points
ID: 39717181
You could just add the constant character "1" as the first column of the first "select", and the constant character "2" as the first column of the second "select":

select '1' dummy,
'UTCTIME!POINTNUMBER!POINTNAME!VALUE_INST!TLQ_INST!VALUE_PROM!
...
union all
SELECT '2' dummy,
TO_CHAR(H.UTCTIME,'YYYY/MM/DD HH24:MI:SS')||'!'||TO_CHAR
...

Now add after your "set" commands

column dummy noprint

and change the order statement to

order by 1,2

and you should be fine.

wmp
0
 

Author Closing Comment

by:carlino70
ID: 39717203
Excellent
Thanks and regards!
0
 
LVL 32

Expert Comment

by:awking00
ID: 39717302
Were you not satisfied or not get the right results when removing the order by1 (or making it order by 1 desc)?
0

Featured Post

Ransomware: The New Cyber Threat & How to Stop It

This infographic explains ransomware, type of malware that blocks access to your files or your systems and holds them hostage until a ransom is paid. It also examines the different types of ransomware and explains what you can do to thwart this sinister online threat.  

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Configuring and using Oracle Database Gateway for ODBC Introduction First, a brief summary of what a Database Gateway is.  A Gateway is a set of driver agents and configurations that allow an Oracle database to communicate with other platforms…
Checking the Alert Log in AWS RDS Oracle can be a pain through their user interface.  I made a script to download the Alert Log, look for errors, and email me the trace files.  In this article I'll describe what I did and share my script.
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question