精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網(wǎng)站建設(shè)資訊

NEWS

網(wǎng)站建設(shè)資訊

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

創(chuàng)新互聯(lián)建站專注于瑪多企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城開(kāi)發(fā)。瑪多網(wǎng)站建設(shè)公司,為瑪多等地區(qū)提供建站服務(wù)。全流程按需開(kāi)發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)

一、需求

1. 需求背景

  • 需求一:統(tǒng)計(jì)當(dāng)前及歷史同期業(yè)務(wù)量并在一個(gè)字段內(nèi)展示;

  • 需求二:統(tǒng)計(jì)指定時(shí)間段內(nèi)業(yè)務(wù)總量;

2. 最終效果展示

2.1 模擬表的表結(jié)構(gòu)

本文以水果銷(xiāo)量模擬真實(shí)的業(yè)務(wù)量

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本

2.2 當(dāng)前及歷史同期效果展示

統(tǒng)計(jì)近7天內(nèi)和歷史同期各水果銷(xiāo)量

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本

2.3 某時(shí)間段內(nèi)總計(jì)效果展示

統(tǒng)計(jì)2019年全年各水果銷(xiāo)量總計(jì)

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本

二.腳本

1. 當(dāng)前及歷史同期腳本

#!/usr/bin/ksh

#運(yùn)行示例:sh fru_calc_day.sh

#本腳本用于統(tǒng)計(jì)每日及同期歷史的水果銷(xiāo)量

#統(tǒng)計(jì)時(shí)間從前D1天開(kāi)始,默認(rèn)為7,即統(tǒng)計(jì)從7天前開(kāi)始
D1=7
#統(tǒng)計(jì)時(shí)間到前D2天,默認(rèn)為1,即截止到前一天
D2=1
#歷史數(shù)據(jù),默認(rèn)為12,即前12個(gè)月(去年)
M=12

#日志時(shí)間格式
filedate=`date +"%Y%m%d%H%M"`
#日志名
REPORT="/tmp/fru/report$filedate.log"

#數(shù)據(jù)庫(kù)用戶名/密碼,根據(jù)實(shí)際情況填寫(xiě)
DBUSER=dbuser
DBPASSWD=password

#數(shù)據(jù)庫(kù)環(huán)境變量,根據(jù)實(shí)際情況填寫(xiě)
export ORACLE_SID=mydb
export ORACLE_BASE=/oracle/app/10.2.0
export ORACLE_HOME=$ORACLE_BASE/db_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export NLS_LANG="SIMPLIFIED Chinese_CHINA.ZHS16GBK"

FRU_CALC() {
echo "***************************每日水果銷(xiāo)量統(tǒng)計(jì)***************************">> $REPORT
sqlplus -s /nolog << EOS | sed '1d' | sed '/rows selected/d'
conn $DBUSER/$DBPASSWD
set linesize 999
set pages 999
col 日期 format a30
col 蘋(píng)果(歷史同期) format a30
col 梨子(歷史同期) format a30
col 香蕉(歷史同期) format a30
col 橙子(歷史同期) format a30
select f.day as "日期",
       f.app as "蘋(píng)果(歷史同期)",
       f.pea as "梨子(歷史同期)",
       f.ban as "香蕉(歷史同期)",
       f.ora as "橙子(歷史同期)"
  from (select t.day,
               t.app || '(' || y.app || ')' as app,
               t.pea || '(' || y.pea || ')' as pea,
               t.ban || '(' || y.ban || ')' as ban,
               t.ora || '(' || y.ora || ')' as ora
          from (select a.day,
                       a.apple as app,
                       a.pear as pea,
                       a.banana as ban,
                       a.orange as ora
                  from fruits a
                 where a.day between TRUNC(sysdate - $D1, 'DD') and
                       TRUNC(sysdate - $D2, 'DD')) t,
               (select a.day,
                       a.apple as app,
                       a.pear as pea,
                       a.banana as ban,
                       a.orange as ora
                  from fruits a
                 where a.day between
                       TRUNC(ADD_MONTHS(sysdate, -$M) - $D1, 'DD') and
                       TRUNC(ADD_MONTHS(sysdate, -$M) - $D2, 'DD')) y
         where ADD_MONTHS(t.day, -$M) = y.day) f
order by f.day;
quit
EOS
}

FRU_CALC >>$REPORT 2>&1

echo "*****************************end*****************************">> $REPORT

本文腳本的執(zhí)行shell為/usr/bin/ksh,可根據(jù)實(shí)際情況修改,運(yùn)行命令echo $SHELL可查看當(dāng)前用戶的shell類(lèi)型。

2. 某時(shí)間段內(nèi)總計(jì)腳本

#!/usr/bin/ksh

#運(yùn)行示例:sh  fru_calc_sum.sh 20190101 20191231
#本腳本用于統(tǒng)計(jì)月度、年度或任意時(shí)間段內(nèi)水果銷(xiāo)量匯總

#參數(shù)1,開(kāi)始時(shí)間
startdate="$1"
#參數(shù)2,結(jié)束時(shí)間
enddate="$2"

#日志時(shí)間格式
filedate=`date +"%Y%m%d%H%M"`
#日志名
REPORT="/tmp/fru/report$filedate.log"

#數(shù)據(jù)庫(kù)用戶名/密碼,根據(jù)實(shí)際情況填寫(xiě)
DBUSER=dbuser
DBPASSWD=password

#數(shù)據(jù)庫(kù)環(huán)境變量,根據(jù)實(shí)際情況填寫(xiě)
export ORACLE_SID=mydb
export ORACLE_BASE=/oracle/app/10.2.0
export ORACLE_HOME=$ORACLE_BASE/db_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export NLS_LANG="SIMPLIFIED Chinese_CHINA.ZHS16GBK"

FRU_CALC() {
echo "***********歷史水果銷(xiāo)量總計(jì):'$startdate'至'$enddate'***********">> $REPORT
sqlplus -s /nolog << EOS | sed '1d' | sed '/rows selected/d'
conn $DBUSER/$DBPASSWD
set linesize 999
set pages 999
select sum(f.app) as "蘋(píng)果",
       sum(f.pea) as "梨子",
       sum(f.ban) as "香蕉",
       sum(f.ora) as "橙子"
  from (select a.day,
               sum(a.apple) as app,
               sum(a.pear) as pea,
               sum(a.banana) as ban,
               sum(a.orange) as ora
          from fruits a
         where a.day between to_date('$startdate', 'yyyymmdd') and
               to_date('$enddate', 'yyyymmdd')
         group by a.day) f;
quit
EOS
}

FRU_CALC >>$REPORT 2>&1

echo "*****************************end*****************************">> $REPORT

統(tǒng)計(jì)20190101至 20191231水果銷(xiāo)量匯總。

三、運(yùn)行效果

1. 當(dāng)前及歷史同期查詢

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本

2. 某時(shí)間段內(nèi)總計(jì)查詢

如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本

關(guān)于如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。


文章題目:如何查詢數(shù)據(jù)庫(kù)內(nèi)歷史同期和總計(jì)腳本
網(wǎng)站網(wǎng)址:http://m.jcarcd.cn/article/jsdocd.html
主站蜘蛛池模板: 日韩国产精 | 日韩男女午夜爆操 | 18所黄| 韩国午夜三级理论 | 日产在线 | 97视频网站| 精品中文字幕女同 | 区三区影院动漫 | 国产在线欧美 | www.成人导航 | 三级在线观看自 | 国产精品三p | 国产97在线看 | 日本一道综 | 欧美一区日韩专区 | 日韩国产在线va | 飘雪影院手机免 | 国产人在线成免费 | 国产乱子伦电视 | 国产精品女主播 | 国产91综合 | 成人精品人成网站 | 久涩导航| 不卡一区二区在线 | 国产亚洲精品欧洲 | 成人一在线视频日 | 日韩亚洲视频一 | 3d动漫网 | 中文字幕国产日韩 | 人成视频在线观看 | 国产高清晰在线播放 | 福利写真影院 | 久色悠悠精品 | 91福利主页 | 乱伦综合国产免费 | 午夜dj | 国产精品+免费 | 日本不卡精品 | 国产人妖在线 | 日本乱伦中文自拍 | 最新上映电影免费抢先 |