【发布时间】:2011-04-01 05:15:14
【问题描述】:
我有 sql 脚本:
SPOOL &1
Select to_char(min(calen_dt),'mm-dd-YY') FD,
to_char(max(calen_dt),'mm-dd-YY') LD
from put_calen
where calen_dt >= trunc(sysdate,'mm') - interval '1' month
and calen_dt <= trunc(sysdate,'mm') - interval '1' day
and business_day_ind = 'Y';
SPOOL OFF
将其输出转储到 get.tmp
我的问题是如何在我的 cshell 脚本中设置最小和最大日期,以便我可以使用该日期.. 我这样做的方式.. 它没有工作.. 我需要在这里更改什么
sqlplus $ORA_UID/$ORA_PSWD @${SQL}example.sql ${TMP}get.tmp
set first_date=`cat ${TMP}/get_date.tmp | awk -F '{print $1}'`
echo 'First Date: '${first_date}
set last_date=`cat ${TMP}/get_date.tmp | awk -F '{print $2}'`
echo 'Last Date: '${last_date}
【问题讨论】:
-
能否请您至少提供一个示例行,说明您的输入内容以及您希望从中检索的值。这将非常有助于获得您正在寻找的答案。
-
plz.. 谁能帮帮我.. 我真的需要解决这个问题.. 但不知道它在分隔符文件中是如何工作的
-
抱歉,根据 SiegeX 的评论,仍然不清楚 get_date.tmp 中的数据是什么样的。否则我们只是猜测。另外,目前还不清楚;...您是否使用作为您要修复的过程的一部分发布的 SQL 代码,或者您是否向我们展示了 SQL 代码,因为它具有您需要在 csh 中重新创建的日期计算,或者您是试图解析 get_date.tmp 中的输出?每周都有一个关于如何在 shell 中进行日期计算的问题。只是搜索那个。或 更改您的帖子以显示 1. 之前、2. 之后、3. 为什么它是错误的。 4 你在做什么,拜托;-)!祝你好运。