微信公众号:关注菜鸟解说大数据
关注可了解更多的大数据相关的内容。问题或建议,请公众号留言;
如果你觉得我写的文章对你有帮助,欢迎关注和赞赏我[1]
推荐阅读shell+mysql对日期型数据进行处理1.建表和插入数据2.用group by的方式实现提取date表中的数据3.使用DATE_FORMAT函数的方式4.上述两种方式的区别5.总结关注菜鸟解说大数据
推荐阅读
shell+mysql对日期型数据进行处理
需求:建好一张原表,和一张正式表,原表中要求要有所有的数据,而正式表中只需要原表中每个月最后一天的数据,如果是你,你会怎么解决呢?接下来就看看我的思路吧。
1.建表和插入数据
这里我需要建立一张表,里面的数据如下图1所示
表中的数据是由下面的shell脚本得来的
1#!/bin/bash
2HOSTNAME="localhost"
3PORT="3306"
4USERNAME="root"
5PASSWORD="root"
6DBNAME="test"
7TABLENAME="date"
8
9
10EXPORT_START_DATE=$1
11EXPORT_END_DATE=$2
12
13
14#创建表
15
16create_table_sql=" drop table if EXISTS ${TABLENAME};
17create table IF NOT EXISTS ${TABLENAME} (
18day_date VARCHAR(20) default null,
19day_id VARCHAR(20) default null,
20day_desc VARCHAR(20) default null,
21month_id VARCHAR(20) default null,
22month_desc VARCHAR(20) default null,
23quarter_id VARCHAR(20) default null,
24quarter_desc VARCHAR(20) default null,
25half_year_id VARCHAR(20) default null,
26half_year_desc VARCHAR(20) default null,
27year_id VARCHAR(20) default null,
28year_desc VARCHAR(20) default null
29 )"
30
31mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${create_table_sql}"
32
33i=$EXPORT_START_DATE
34while [[ $i < `date -d "+1 day $EXPORT_END_DATE" +%Y%m%d` ]]
35 do
36 #echo $i
37 k_day_date=`date -d $i +%F`
38 day_date=$k_day_date
39 #echo $day_date
40
41 k_day_id=`date -d $i +%Y%m%d`
42 day_id=$k_day_id
43 #echo $day_id
44
45 k_day_desc=`date -d $i +%Y年%m月%d日`
46 day_desc=$k_day_desc
47 #echo $day_desc
48
49 k_month_id=`date -d $i +%Y%m`
50 month_id=$k_month_id
51 #echo $month_id
52
53 k_month_num=`date -d $i +%m`
54 month_num=$k_month_num;
55 #echo $month_num

本文介绍了如何使用Shell脚本和MySQL处理日期型数据,包括通过`GROUP BY`和`DATE_FORMAT`函数提取每月最后一天数据的方法,并讨论了两者之间的区别。适合需要进行数据处理的读者参考。
最低0.47元/天 解锁文章
2012

被折叠的 条评论
为什么被折叠?



