Hallo Leute
ich bin neuling im Bereich SQL und auf der Suche folgende Lösung.
Es geht um folgende Tabelle. In dieser Tabelle ist 2. Spalte also Datum für uns relevant.
11364008mq.png
Wenn ich folgende Abfrage ausführe, dann erhalte ich das gewünschte Ergebnis.
Das Ergebnis:
11364008mq.png
Im Ergebnis wird bei 2. Spalte TMST mit Datum und Zeit ausgegeben wie ich gewünscht habe.
Nun bin ich dabei ein Shell Script zu schreiben. Mein Script soll die Datenbank Tabelle auslesen und das Ergebnis ausgeben.
In der Ausgabe Datei sieht aber Datum folgendes aus.
11366258eh.png
Also sieht man nur Datum, aber nicht Zeit. Wie kann ich in meinem Shell Script TMST so konvertieren, damit ich im Ergebnis das Datum mit richtigem Format (wie im SQL) ausgegeben erhalten kann.
Vielen Dank im Voraus
Gruß
Basay
ich bin neuling im Bereich SQL und auf der Suche folgende Lösung.
Es geht um folgende Tabelle. In dieser Tabelle ist 2. Spalte also Datum für uns relevant.
11364008mq.png
Wenn ich folgende Abfrage ausführe, dann erhalte ich das gewünschte Ergebnis.
Code:
SELECT AWB, TMST FROM TDSOS_AWB_LOCKS WHERE TMST < (SYSDATE-(1/48))
11364008mq.png
Im Ergebnis wird bei 2. Spalte TMST mit Datum und Zeit ausgegeben wie ich gewünscht habe.
Nun bin ich dabei ein Shell Script zu schreiben. Mein Script soll die Datenbank Tabelle auslesen und das Ergebnis ausgeben.
Code:
#!/bin/csh #################################################################################### ## CheckscriptForAwbLocker.sh - Levent Oturak U102601 02.08.2012 #################################################################################### ## #################################################################################### echo "=========================================================================" echo "Diese Script überprüft die AWB Locker Tabelle" echo "gibt aus, sobald ein Eintrag in der AWBLocker Tabelle enthalten ist, " echo "dessen Timestamp kleiner als (aktuelles Datum - 30) sind." echo "=========================================================================" #directories set tempDir = "$HOME/temp/" set tempSqlQuery = "$HOME/temp/CheckSqlAwbLocker.sql" set targetSuffix = ".stat" set dailyReport = "$HOME/temp/Ergebnis$targetSuffix" ############################### ## build SQL Query ############################### echo "set pagesize 0" > $tempSqlQuery echo "set linesize 800" >> $tempSqlQuery echo "set heading off" >> $tempSqlQuery echo "set headsep off" >> $tempSqlQuery echo "set feedback off" >> $tempSqlQuery echo "set trimspool on" >> $tempSqlQuery echo "set wrap off" >> $tempSqlQuery echo "set pause off" >> $tempSqlQuery echo "set trim on" >> $tempSqlQuery echo "set tab off" >> $tempSqlQuery echo "set space 1" >> $tempSqlQuery echo "set recsep off" >> $tempSqlQuery echo "SELECT AWB, TMST " >> $tempSqlQuery echo "FROM TDSOS_AWB_LOCKS " >> $tempSqlQuery echo "WHERE TMST < (SYSDATE-(1/48));" >> $tempSqlQuery echo "quit;">>$tempSqlQuery #execute query sqlplus -s $DBMASTER_USER/$DBMASTER_PASSWORD @$tempSqlQuery >> $dailyReport
11366258eh.png
Also sieht man nur Datum, aber nicht Zeit. Wie kann ich in meinem Shell Script TMST so konvertieren, damit ich im Ergebnis das Datum mit richtigem Format (wie im SQL) ausgegeben erhalten kann.
Vielen Dank im Voraus
Gruß
Basay
Comment