shell中如何通过多个位置变量处理数据
admin
2023-02-17 04:40:01
0

cat dd.txt

courseId  startTime  endTime

107 1548471600  1548475200
337 1550455200  1550458800
337 1553306400  1553310000

如上所述,现在有一批数据,需要通过courseId、startTime、endTime三个维度(三个变量)唯一确定一条数据,然后以courseId分组进行数据统计。记得有位置变量可以实现,不过很遗憾的是忘记了,只能对而求其次,换了一种方法实现,如果有大神路过,还请指教

cat dd.sh
#!/bin/bash

username=account
passwd=mima
mysql -u$username -p$passwd -Bse "truncate table test.caidan"

while [ "1" = "1" ]
do
    id=`cat dd.txt | head -1 | awk '{print $1}'`
    start=`cat dd.txt | head -1 | awk '{print $2}'`
    end=`cat dd.txt | head -1 | awk '{print $3}'`
    num1=`mysql -u$username -p$passwd edusoho_e -Bse "SELECT COUNT(*) FROM course_member WHERE courseId=$id AND createdTime BETWEEN $start AND $end"`
    mysql -u$username -p$passwd -Bse "insert into test.caidan select $id,$num1"
    sed -i '1d' dd.txt
    num=`cat dd.txt | wc -l`
    if [ $num -eq 0 ];then
        exit
    fi
done

分组统计结果

SELECT id,SUM(num1) FROM `test`.`caidan` GROUP BY id ORDER BY NULL

相关内容

热门资讯

巴拿马外长喊话访华团:尊重中国... 【文/观察者网 柳白】据香港英文媒体《南华早报》报道,数名巴拿马议员组成的代表团抵达中国访问之际,巴...
华帝燃气灶自动熄火什么原因 原因:热敏针出现故障,检查灶眼,看中间的火焰能不能烧到探针,烧到探针才能定住火,在点火的时候,长按几...
燃气灶一直打火滴滴响然后熄火 原因可能是在刚打开的时候马上熄火了,这种情况比较复杂,建议首先检查燃气灶出火的地方是否堵塞,对出火口...
煤气灶一直打火嗒嗒嗒响怎么修理 问题:煤气灶一直打火嗒嗒嗒响怎么修理回答:1、有时候煤气灶的电路出现了接触不良,就会导致在使用过程当...
天然气灶打不着火一直滴滴响 1、没有燃气,在碰到天然气灶打不着火时,首先要查看是否还有燃气。2、电池没电,发现点不着火而且没有哒...
燃气打不着火一直滋滋响就是不着 点火针位置不正确,只要调整点火针就可以了。托起燃气灶拧开镙丝钉,打开密封盖,揭起钢化玻璃面板。安装上...
亲绿民调中柯志恩追近13%,蓝... 海峡导报综合报道 岛内亲绿媒体5日公布高雄市长选举民调,民进党民代赖瑞隆以47%支持度暂时领先国民党...
拒绝美国干涉,巴拿马议员抵华交... “我们是一个自由且拥有主权的国家……我们想去哪里,就去哪里。”正在中国访问的巴拿马民主革命党议员哈伊...
高市下跪了,但更值得警惕 我相信,中国、韩国等很多亚洲国家的朋友,看到这一幕,心头翻涌的不是感慨,更多是气愤。日本首相高市早苗...
万邦德重磅创新药再获突破! 斩... 5月5日,万邦德(002082)在研创新药传出重磅利好,全资子公司万邦德制药集团有限公司(下称“万邦...