2016 - 2024

感恩一路有你

sql server按小时段分组查询 如何才能用EXCEL去连接SQL数据库读取数据?

浏览量:2635 时间:2023-04-27 12:50:05 作者:采采

如何才能用EXCEL去连接SQL数据库读取数据?

Exc

sql如何查询明细账及月计累计?

其实这是一个很基础的知识。

下面的例子:

DDL:

创建表` TBL _ fin `( ` id ` bigint(20)unsigned NOT NULL AUTO _ INCREMENT,` fin_date` date缺省NULL,` TrueName` varchar(128)缺省NULL,` Money` decimal(10,2) unsigned缺省NULL,主键(` id`) ) ENGINEInnoDB缺省CHARSETutf8

插入一堆测试数据:

插入; TBL _ fin ;值(1,2018-01-01,晓明,100.00)

插入到; TBL _ fin ; values(2,2018-01-01,晓明,100.00)

插入到; TBL _ fin ;值(3,2018-01-01,晓明,100.00)

插入到; TBL _ fin ; values(4,2018-01-02,晓明,100.00)

插入到; TBL _ fin ;值(5,2018-01-03,晓明,100.00)

插入到; TBL _ fin ; values(6,2018-01-05,小红,100.00)

插入到; TBL _ fin ; values(7,2018-01-06,小红,100.00)

插入到; TBL _ fin ; values(8,2018-01-08,小红,100.00)

插入到; TBL _ fin ; values(9,2018-02-08,小红,100.00)

插入入` tbl _ fin `值(10,2018-03-08,小红,100.00)

插入到; TBL _ fin ; values(11,2018-04-08,小红,100.00)

插入到; TBL _ fin ; values(12,2018-05-08,小红,100.00)

插入到; TBL _ fin ; values(13,2018-06-08,小红,100.00)

插入到; TBL _ fin ; values(14,2018-06-08,晓明,3.40)

插入到; TBL _ fin ; values(15,2018-06-08,晓明,398.49)

插入到; TBL _ fin ; values(16,2018-06-08,晓明,982.24)

插入到; TBL _ fin ; values(17,2018-06-08,晓明,715.72)

插入; TBL _ fin ;值(18,2018-05-08,晓明,631.88)

插入到; TBL _ fin ; values(19,2018-05-08,晓明,12.25)

插入到; TBL _ fin ; values(20,2018-05-08,晓明,165.59)

插入到; TBL _ fin ; values(21,2018-05-08,晓明,791.23)

插入到; TBL _ fin ; values(22,2018-04-08,晓明,459.35)

插入到; TBL _ fin ; values(23,2018-04-08,晓明,923.06)

插入到; TBL _ fin ; values(24,2018-04-08,晓明,237.28)

插入到; TBL _ fin ; values(25,2018-03-08,晓明,417.18)

插入到; TBL _ fin ; values(26,2018-03-08,晓明,374.10)

插入` tbl_fin` VA吕斯(27,2018年3月8日,小明,618.93)

插入到; TBL _ fin ; values(28,2018-03-08,晓明,972.37)

插入到; TBL _ fin ; values(29,2018-02-08,晓明,5.04)

插入; tbl _ fin ;值(30,2018-02-08,晓明,108.08)

插入; TBL _ fin ;值(31,2018-02-08,晓明,525.31)

插入到; tbl _ fin ;值中(32,2018-01-08,晓明,302.32)

插入到; TBL _ fin ; values(33,2018-01-08,晓明,935.65)

插入; tbl _ fin ;值(34,2018-01-08,晓明,771.28)

插入到; tbl _ fin ;值中(35,2018-01-09,晓明,49.48)

插入到; TBL _ fin ; values(36,2018-01-09,小红,933.54)

插入到; TBL _ fin ; values(37,2018-01-09,小红,519.26)

插入到; TBL _ fin ; values(38,2018-01-09,小红,795.69)

插入到; TBL _ fin ; values(39,2018-01-09,小红,420.67)

然后我们就可以进入正题了。

获取明细账:1。根据用户获取每月日志的内容:

假设一个用户等于 "小明 "一个月等于 "2018-01 "。

Select * from TBL _ fin其中真名小明和date _ format (fin _ date,% y-% m)2018-01 order by fin _ date ASC。

其中,

真名小明的意思是用真名小明过滤记录。

DATE_FORMAT(fin_date,%Y-%m)表示将fin_date的日期格式格式化,输出为yyyy-mm。

按fin排序_date ASC是指记录按照fin_date从小到大排序。

得到的结果是小明 2018年1月s详解。

其次,是每月累计账户:假设你需要得到小明 每月账单。

Select真名,sum (money) as money,date _ format (fin _ date,% y-%m) as date month from TBL _ fin其中真名小明group by concat(真名,date _ format (fin _ date,% y-%m)) order by date month ASC

SUM(Money) as Money的意思是数(加)钱的总数。

Date _ format (fin _ date,% y-%m)作为日期月,它将日期格式化为年和月。

Group by concat(真名,date _ format (fin _ date,% y-%m))这里需要反汇编一下才能理解。

(TrueName,date _ format (fin _ date,% y-%m))表示组合真实姓名和年、月、日的字符。

BY是指按此对统计数据进行分组。

结果是小明 的每月累计账单:

以上只是初步的SQL教程。测试环境是MYSQL 5.5.47,SQL Server的编写不一样。

另外,一般情况下,一般用于统计或筛选,建议加一个指数。尤其是金融的统计计算。

NULL Excsql 明细账 DDL

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。