mysql设计表月份_mysql,表设计

闲着没事搞了一下,欢迎指教。。

用户表:

CREATE TABLE `usr` (

`uid` int(11) NOT NULL,

`name` char(10) DEFAULT NULL,

PRIMARY KEY (`uid`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

吃饭记录表:

CREATE TABLE `meal` (

`mid` int(11) NOT NULL,

`money` int(11) DEFAULT NULL comment '付款金额',

`pay_uid` int(11) DEFAULT NULL comment '付款人员id',

`dt` date DEFAULT NULL,

PRIMARY KEY (`mid`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

吃饭人员流水表:

CREATE TABLE `meal_jnl` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`mid` int(11) DEFAULT NULL,

`in_uid` int(11) DEFAULT NULL comment '参加人员id',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;

造数据:

INSERT INTO `usr` (`uid`, `name`)

VALUES

(1, 'jim'),

(2, 'jeak'),

(3, 'lucy'),

(4, 'carl'),

(5, 'jerry'),

(6, 'mark');

INSERT INTO `meal` (`mid`, `money`, `pay_uid`, `dt`)

VALUES

(1, 122, 2, '2017-06-01'),

(2, 56, 4, '2017-06-01'),

(3, 56, 1, '2017-06-02'),

(4, 76, 3, '2017-06-03'),

(5, 54, 5, '2017-06-04'),

(6, 66, 2, '2017-06-05'),

(7, 77, 2, '2017-06-05'),

(8, 34, 3, '2017-06-06'),

(9, 54, 1, '2017-06-07'),

(10, 77, 4, '2017-06-08'),

(11, 45, 5, '2017-06-08'),

(12, 87, 2, '2017-06-10'),

(13, 123, 3, '2017-06-11'),

(14, 431, 1, '2017-06-11'),

(15, 23, 4, '2017-06-12');

INSERT INTO `meal_jnl` (`id`, `mid`, `in_uid`)

VALUES

(1, 1, 2),

(2, 1, 3),

(3, 1, 4),

(4, 1, 5),

(5, 2, 1),

(6, 2, 2),

(7, 2, 4),

(8, 2, 5),

(9, 3, 1),

(10, 3, 2),

(11, 3, 3),

(12, 3, 4),

(13, 3, 5),

(14, 4, 3),

(15, 4, 4),

(16, 4, 5),

(17, 5, 2),

(18, 5, 5),

(19, 6, 4),

(20, 6, 5),

(21, 6, 1),

(22, 6, 2),

(23, 7, 2),

(24, 7, 5),

(25, 7, 1),

(26, 8, 2),

(27, 8, 3),

(28, 8, 4),

(29, 8, 5),

(30, 9, 1),

(31, 9, 4),

(32, 10, 1),

(33, 10, 2),

(34, 10, 3),

(35, 10, 4),

(36, 10, 5),

(37, 11, 1),

(38, 11, 2),

(39, 11, 5),

(40, 12, 2),

(41, 12, 5),

(42, 13, 3),

(43, 13, 1),

(44, 14, 1),

(45, 14, 3),

(46, 14, 4),

(47, 15, 3),

(48, 15, 4),

(49, 15, 5),

(50, 15, 6),

(51, 11, 6);

获取没人月底应付金额:

select in_uid,out_mon-pay_mon tm,name from (

select sum(case when money is null then 0 else money end) pay_mon,uid,name

from meal right join usr

on meal.`pay_uid`=usr.uid

where dt between '' and ''

group by pay_uid) aaa

right join (

select in_uid,sum(am) out_mon

from (

select a.mid,money/count(in_uid) am

from meal_jnl a join meal b

on a.mid=b.mid

where b.dt between '' and ''

group by mid) aa

join meal_jnl bb

on aa.mid=bb.mid group by in_uid) bbb

on aaa.uid=bbb.in_uid;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/301288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

keepalived 原理,安装,配置

什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,那说到ke…

28合1智能积木,56种玩法,让孩子循序渐进“玩”出新知识

▲数据汪特别推荐点击上图进入玩酷屋小木作为一名资深积木达人,我可是大大小小的积木阅览无数,最近小木又发现一个超好玩的----28合1小卡百变积木!小卡百变积木是小卡团队研发的一款全新概念的智能积木,由276颗高精度积木&#xf…

表3.5 文章管理测试用例表_本地管理表空间管理机制

表空间是一种为段(表,索引等)提供空间的逻辑结构,所以,当在表空间中增加,删除段的时候,数据库就必须跟踪这些空间的使用。如下例所示,假定一个新创建的表空间包含了五个表表一……表…

.NET | 多线程下的调用上下文 : CallContext

【.NET】| 总结/Edison Zhou最近在分析现在团队的项目代码(基于.NET Framework 4.5),经常发现一个CallContext的调用,记得多年前的时候用到了它,但是印象已经不深刻了,于是现在来复习一下。1CallContext是个…

每日一笑 | 哪个男人到底是谁?!

全世界只有3.14 % 的人关注了数据与算法之美(图源网络,侵权删)

min里所有的参数都不存在_高中生物所有的考点难点,其实都在你不仔细看的课本里,必修1-3超强记忆手册!...

对很多理科生来说,高中生物就是一门不是文科胜似文科的学科。很多数学、物理成绩非常突出的学生却不能在这样一门“理科”课程当中取得优势。生物老师在这门学科的提高上反复强调“回归课本”却又让很多习惯刷题的理科生不知无从下手。进入高三后,生物、…

我看电商(作者近三十年从事零售及电子商务管理的总结和分享)

我看电商(作者近三十年从事零售及电子商务管理的总结和分享) 黄若 著 ISBN 978-7-121-20268-1 2013年6月出版 定价:39.00元 284页 16开 编辑推荐 近年来电商行业在中国迅猛发展,电子商务正在日益深入的影响着越来越多人的生活。…

Masuit.Tools,一个免费的轮子

开源地址:https://gitee.com/masuit/Masuit.Tools包含一些常用的操作类,大都是静态类,加密解密,反射操作,动态编译,权重随机筛选算法,简繁转换,分布式短id,表达式树&…

每日一笑 | 坐牢吗?学编程那种~

全世界只有3.14 % 的人关注了数据与算法之美(图源网络,侵权删)

mysql 命令 g_MySQL命令行的几个用法

MySQL命令行的几个用法MySQL的客户端命令行工具,有很多方便使用者的特性,某些方面甚至可以说比Oracle的sqlplus更加人性化。当然从整体来说,还是sqlplus更加方便些,这么说或许是我对sqlplus更加熟悉吧。这里记录下MySQL命令行几个…

NET问答: 如何取消或中止 Task 执行 ?

咨询区 Patrice Pezillier:我在一个线程里创建了若干了task并开启执行,当我在业务逻辑中执行了 Thread.Abort() 之后,我发现这些 Task 并没有被终止掉?问题来了,我如何将 Abort() 传递到内部的 Task 呢?回答…

VMware vSphere 5.1 群集深入解析(二十六)- 数据存储维护模式汇总

VMware vSphere5.1Clustering DeepdiveHA.DRS.Storage DRS.Stretched ClustersDuncan Epping &Frank DennemanTranslate By Tim2009 / 翻译:Tim2009目录版权关于作者知识点前言第一部分 vSphere高可用性第一章 介绍vSphere高可用性第二章 高可用组件第三章 基本…

硕士论文研究「AI预测性取向」:化妆等因素并不影响判断

全世界只有3.14 % 的人关注了数据与算法之美2017 年,斯坦福大学的一篇《深度学习通过面部识别判断性取向超越人类》曾引发了极大争议,其通过 AI 算法仅需「看面相」即可判断一个人是不是同性恋的方法让众人感到一丝恐慌,也让技术研究者们对于…

[翻译]Go与C#对比 第三篇:编译、运行时、类型系统、模块和其它的一切

Go vs C#, Part 3: Compiler, Runtime, Type System, Modules, and Everything Else | by Alex Yakunin | ServiceTitan — Titan Tech | Medium目录译者注相似性编译垃圾回收模块类、结构、接口错误处理相等性(, !)基础类库两种语言中存在的其他类似特…

php mysql explain_MySQL Explain详解

MySQL Explain详解在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引&a…

指针易出错点一

2019独角兽企业重金招聘Python工程师标准>>> 声明指针中会遇到的问题 int* p1,p2; 上面这条语句的本意应该是声明两个指向int的指针,而实际的效果是p1是指针类型,p2却是int类型,这是因为在C语言中,声明和解释的语法并…

206块积木,72套进阶玩法!玩转STEAM教育,帮你省掉上万块的乐高课

▲数据汪特别推荐点击上图进入玩酷屋作为一名资深积木达人,小木我可是大大小小的积木阅览无数,当然乐高也不会放过,虽然“钱包君”已经是路人了。(每月的工资用来买乐高~)之前给大家推荐了一款STEM积木,小小…

python如何正则匹配浮点值_python使用正则搜索字符串或文件中的浮点数代码实例...

# -*- coding: utf-8 -*-#----------------------------------------------------------------------# FileName:gettxtdata.py#功能:读取字符串和文件中的数值数据(浮点数)#主要提供类似matlab中的dlmread和dlmwrite函数#同时提供loadtxtdata和savetxtdata函数#Data: 2013-1-1…

用了VS2022,你可能再也回不去旧版!

VS2022发布第11天,最直接的使用感受就是智能提示太哇塞了,之前是提示一个单词,现在直接提示一行,撸码速度直接起飞!再就是打开ASP.NET Core的源码,500多个项目3G的体积,过程比VS2019要顺滑多了&…

poj2578

简单题 #include <cstdio>int main() {int f[5];for (int i 0; i < 3; i){scanf("%d", &f[i]);if (f[i] < 168){printf("CRASH %d\n", f[i]);return 0;}}printf("NO CRASH\n");return 0; } View Code 转载于:https://www.cnblo…