mysql - 如何修复 MySQL 查询?

标签 mysql sql

创建表测试TableOne (

Id INT NOT NULL AUTO_INCRMENT ,

Empno INT NULL ,

名称 VARCHAR(45) NULL ,

余额 DECIMAL(6,2) NULL ,

地点 VARCHAR(45) NULL ,

主键(Id));

创建表测试TableTwo (

Id INT NOT NULL AUTO_INCRMENT ,

日期 日期为空,

Empno INT NULL ,

收据 DECIMAL(6,2) NULL ,

付款 DECIMAL(6,2) NULL ,

状态 VARCHAR(45) NULL ,

主键(Id));

INSERT INTO test.tableone (Empno, 名称, 余额, 地点) VALUES (100, '约翰', '1500', '沃辛顿特区');

INSERT INTO test.tableone (Empno, 名称, 余额, 地点) VALUES (101, 'Joselin', '1000', 'Dexcity');

INSERT INTO test.tableone (Empno, 名称, 余额, 地点) VALUES (102, 'Rusfal', '0', 'Donxes'); INSERT INTO test.tableone (Empno, 名称, 余额, 地点) VALUES (103, 'Raser', '100', 'versity');

INSERT INTO test.tableone (Empno, 名称, 余额, 地点) VALUES (104, 'rse', '2500', 'sew');

INSERT INTO test.TableTwo (日期, Empno, 收据, 付款, 状态) VALUES ('2016-08-15', 100, '1000', '0', '确定'); INSERT INTO test.TableTwo (日期, Empno, 收据, 付款, 状态) VALUES ('2016-08-15', 100, '0', '1000', '确定');

INSERT INTO test.TableTwo (日期, Empno, 收据, 付款状态) VALUES ('2016-08-17', 101, '0', '2000', 'OK');

INSERT INTO test.TableTwo (日期, Empno, 收据, 付款, 状态) VALUES ('2016-08-18', 103, '100', '0', '不正常'); INSERT INTO test.TableTwo (日期, Empno, 收据, 付款, 状态) VALUES ('2016-08-19', 100, '1500', '0', '确定'); INSERT INTO test.TableTwo (日期, Empno, 收据, 付款, 状态) VALUES ('2016-08-20', 100, '0', '1000', '确定');

然后我需要输出这个

开始日期“2016-08-18”结束日期“2016-08-20”

Empno 姓名 地点 OB CB
100 约翰·沃辛顿 DC 2400 2000 101 何塞林 德克斯城 1000 0 102 鲁斯法尔·东克斯 0 0

等 103 104

还有

条件 OB 金额少于开始日期,仅基于状态“OK”

论坛 OB=余额+收付款

条件 从日期到日期的 CB 计算仅基于状态 OK

论坛 CB=余额+收付款

最佳答案

使用这个:

SELECT a.id,a.name,sum(amount1)as amount1,sum(Receipt) as Receipt,sum(payment) as payment,
sum(amount1)+sum(Receipt)-sum(payment) as Total,nameid,b.name 
FROM test.mas as a left join test.trans as b on a.id=b.nameid GROUP BY a.id;

关于mysql - 如何修复 MySQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38734443/

相关文章:

mysql - 当我尝试在 MariaDB 数据库上创建此函数(使用点数据类型)时,为什么会出现此错误?

sql - 快速 SQL Join-like 将列添加到 R 中的 data.table

SQL Server 通过左连接和分组进行更新

php - 比较两个表如果重复列则更新,如果不匹配则插入

php - 如何使用下拉菜单、文本字段和提交按钮将我的投票更新到我的 sql 中?

sql - 所有 SQL 地理空间实现数据库都特定于数据库吗?

mysql - 如何在 apache Drill 中使用 sysdate

java - Hibernate JPA 递归查询

mysql - 如何在 MySQL LIKE 子句中使用用户变量?

mysql - 如何在 Varchar(10) 格式 mm/dd/yyyy 中使用 between 查询日期范围