kabuk ben aşağıdaki sql komut çağırır kabuk komut dosyası: ŞimdiDönüş değeri komut
INSERT INTO SEMANTIC.COUNT_STATISTICS (...);
UPDATE SEMANTIC.COUNT_STATISTICS
SET PRNCT_CHANGE = 1.1;
--want to store result of this bellow select statement in model_count variable
select PRNCT_CHANGE
FROM SEMANTIC.COUNT_STATISTICS
WHERE model = '&MY_MODEL'
AND NEW_DATE = (
select max(NEW_DATE)
from SEMANTIC.COUNT_STATISTICS
where MODEL = '&MY_MODEL'
);
, nasıl benim kabuk komut dosyası geri bu PERCENTAGE_NUMBER değişkeni iade edilir?
#!/bin/bash
#
# setup oracle, java, and d2rq environment
. /etc/profile.d/oracle.sh
. /etc/profile.d/java.sh
. /etc/profile.d/d2rq.sh
cd /opt/D2RQ
model_count=$(sqlplus user/pass @count.sql 'MODEL')
if ["$model_count" > 0]; then
echo "percentage count is positive"
else
echo "its negative"
bu son SELECT ifadesi sonucu için istiyorum kabuk komut dosyası benim model_count değişkenine saklanmasına şu şekildedir:
Benim kabuk yazısıdır.
Herkes neden çalışmadığını biliyor mu?
[burada] ksh örneği var (http://asktom.oracle.com/pls/asktom/f/f?p=100:11:0::::P11_QUESTION_ID:430819636473). Bash'da (çok az * nix deneyimi) çalışıp çalışmayacağından emin değil, aynı zamanda sayfada biraz tartışma var. Temelde örnek, tüm SQLPlus çıktısından sorgu sonucunu çıkarmak için sed ve grep kullanır. –