![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| comparer les fichiers dans le système avec la dernière date de modification | bsandeep_80 | Linux | 6 | 01-15-2008 12:56 AM |
| Comment puis-je obtenir la date d'hier dans le format YYYYMMDD | prasadsr | HP-UX | 4 | 01-19-2007 09:52 AM |
| obtenir la date d'hier? | fedora | De programmation et de script Shell | 1 | 12-08-2006 03:28 PM |
| Hier, la fonction date | ssmiths001 | UNIX pour les nuls Questions et réponses | 4 | 01-11-2005 10:06 AM |
| Hier, la date | ssmiths001 | UNIX pour les nuls Questions et réponses | 2 | 11-22-2004 09:46 PM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Comparer date de db2 table hier à la date du système Unix
Je suis actuellement la suite de Korn shell script qui fonctionne bien:
#! / usr / bin / ksh count \u003d `x-db2" select count (*) à partir de schema.tablename "» echo "count" Je voudrais ajouter un ", où" la clause de la 2ème ligne qui me permettrait d'obtenir un nombre record de tous les dossiers de schema.tablename où PROCESS_DT (une variable datetime dans tablename qui est formaté en tant que DATE9.) Est égale à la aujourd'hui les systèmes Unix date - 1. Je ne suis pas sûr de la bonne syntaxe. S'il vous plaît, aidez. count \u003d `x-db2" select count (*) à partir de schema.tablename où PROCESS_DT \u003dSystème UNIX date-1"» |
|
||||
|
|
|
||||
|
Je sais maintenant comment trouver le passé ce jour, cependant, je reçois un message d'erreur indiquant que les opérandes (PROCESS_DT et DATE_STAMP) ne sont pas compatibles. PROCESS_DT date DB2 est un temps variable avec un DATE9 format. Comment puis-je déclarer DATE_STAMP à une date variable temps?
#! / usr / bin / ksh DATE_STAMP \u003d `TZ \u003d CST 24 date +% Y% m% d` count \u003d `x-db2" select count (*) à partir de schema.tablename où PROCESS_DT \u003d "$ DATE_STAMP" "` echo "$ count" |
|
||||
|
Je ne suis pas familier avec db2, mais vous devriez faire quelque chose comme: Code:
DATE_STAMP=`TZ=CST+24 date +%Y-%m-%d`
count=`db2 -x "select count(*) from schema.tablename where PROCESS_DT=DATE("$DATE_STAMP")`
J'ai changé le format de la date et dans l'instruction SQL-je convertir la chaîne en une date de valeur. Observe |
|
||||
|
Franklin52,
Après avoir essayé votre suggestion, j'ai reçu le message d'erreur suivant: SQL0183N Un datetime opération arithmétique ou d'une fonction scalaire datetime a un résultat qui n'est pas valable à l'intérieur de la fourchette de dates. SQLSTATE \u003d 22008 |
|
||||
|
Désolé, j'ai oublié de changer le format de la date avant de lancer à nouveau. Il a travaillé, mais il a renvoyé une valeur de zéro pour compter. J'essaie de comprendre pourquoi cela s'est produit lors de PROCESS_DT dans le tableau db2 est égale à la date d'hier.
|
![]() |
| Bookmarks |
| Tags |
| shell script, shell scripting, scripts unix, unix scripts de base |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|