PHP明细之间的关联和having进行分组,不推荐这样做,只是做为偷懒的办法
-- 只求和wrt的数据,其它数据保持不变!
SELECT A.return_id,A.relevant_id,A.order_id,A.deliver_order_id,A.product_id,A.returnNum,A.deliverNum,A.rdbData,
SUM(wrt.quantity)wrtNum,GROUP_CONCAT(DISTINCT wrt.container_id) useContainer,GROUP_CONCAT(DISTINCT rdb.relevant_id) otherRelevantId,
ww.shortname returnHouse,ww1.shortname deliverHouse,ww2.shortname deliverToHouse,ww3.shortname from_warehouse,ww4.shortname to_warehouse
FROM
(
SELECT
rdp.return_id,
rdp.order_id,
rdp.product_id,
rdp.warehouse_id returnHouse,
rdp.quantity returnNum,
dop.quantity deliverNum,
DATE( rdp.date_added ) rdbData,
dop.deliver_order_id,
doo.do_warehouse_id deliverToHouse,
doo.warehouse_id deliverHouse,
doo.relevant_id
FROM
oc_return_deliver_product rdp -- 商品级别
INNER JOIN deliver_order_product dop ON rdp.order_id=dop.order_id AND rdp.product_id=dop.product_id -- 商品级别
INNER JOIN deliver_order doo ON dop.deliver_order_id=doo.deliver_order_id WHERE
DATE(rdp.date_added) BETWEEN '2018-11-08'
AND date_add( CURRENT_DATE (), INTERVAL 0 DAY)
AND rdp.warehouse_id = 22
AND rdp.confirmed>0
AND rdp.STATUS=1
AND doo.relevant_id >0
) A -- 商品级别
LEFT JOIN relevant_deliver_binding rdb ON A.relevant_id=rdb.relevant_id AND A.deliver_order_id=rdb.deliver_order_id -- 分拣级别
LEFT JOIN warehouse_requisition_temporary wrt ON rdb.relevant_id=wrt.relevant_id AND A.product_id=wrt.product_id AND wrt.relevant_status_id=4 -- 商品级别
LEFT JOIN warehouse_requisition wr ON wrt.relevant_id=wr.relevant_id
LEFT JOIN warehouse ww ON A.returnHouse=ww.warehouse_id
LEFT JOIN warehouse ww1 ON A.deliverHouse=ww1.warehouse_id
LEFT JOIN warehouse ww2 ON A.deliverToHouse=ww2.warehouse_id
LEFT JOIN warehouse ww3 ON wr.from_warehouse=ww3.warehouse_id
LEFT JOIN warehouse ww4 ON wr.to_warehouse=ww4.warehouse_id
GROUP BY wrt.product_id -- 计算wrt基础数据
HAVING returnHouse != from_warehouse -- 分组之后做为条件查询
order by product_id DESC
园子里的草长的都快比人高了,太懒也不想动,好久都没有整理过了,今天先锄锄草,过二天再浇浇水,开始园子的生活,再种点菜什么的,这样看起来像个码农的生活,不至于那么无聊,哈哈,听起来不错哦,给小伙伴分享一些小技巧,同时也让自个再学一遍,PHP明细之间怎么做的关联连动having进行分组,看表结构就知道怎么玩了。如果能用UNION做为条件进行比较查询那么速度会比上述代码更快,相对的连接的表将会更多,但是即便连的数据表多出二到三倍,依然UNION运行速度快,百试不爽!目标都是一样的,只是方式不同,看心情怎么玩了,得到基础后,再用PHP重组数组变成想要的格式。150个字应该够了........
PHP明细之间的关联和having进行分组,不推荐这样做,只是做为偷懒的办法的更多相关文章
- SHAREPOINT 2013 列表之间相互关联
修改内容 1.增加列表设置,隐藏Aid字段操作 SharePoint 列表之间相互关联 例如两张列表之间的父子关系. 思路如下: 列表中新增列表项后会有一个唯一的ID,我们获取到该ID赋予子表即可将两 ...
- 【CoreData】表之间的关联
这次是表之间怎么进行关联,要求如下: // 建立学生与班级表之间的联系 既然是表与表之间的关联,那肯定是要先创建表: // 1.创建模型文件 (相当于一个数据库里的表) // New File ——— ...
- PowerDesigner如何设计表之间的关联
PowerDesigner如何设计表之间的关联 步骤/方法 在工具箱中找到参照关系工具: 由地区表到省份表之间拉参照关系,箭头指向父表,然后双击参照关系线,打开参照关系的属性: 在这里检查 ...
- Winform中Checkbox与其他集合列表类型之间进行关联
本文提供了Checkbox与CheckedListBox.DataGridViewCheckBoxColumn等的联动关系 1.CheckboxAssociateFactroy.Create创建联动关 ...
- Hibernate中表与表之间的关联多对多,级联保存,级联删除
第一步:创建两个实体类:用户和角色实体类,多对多关系,并让两个实体类之间互相关联: 用户实体类: package com.yinfu.entity; import java.util.HashSet; ...
- Postman中如何实现接口之间的关联?
Postman中如何实现接口之间的关联? 不单单说Postman中,我为什么拿Postman举例,因为它比较简单一点. 那如果我只问你如何实现接口之间的关联,那肯定有很多的方式,Postman只是其中 ...
- [MySQL数据库之表的约束条件:primary key、auto_increment、not null与default、unique、foreign key:表与表之间建立关联]
[MySQL数据库之表的约束条件:primary key.auto_increment.not null与default.unique.foreign key:表与表之间建立关联] 表的约束条件 约束 ...
- mybatis中表与表之间的关联
第三天 1.mybatis处理表与表之间的关系? 比如要在帖子回复表里显示其它两张相关联表的信息. 处理的第一种方式: 1)主要的数据实体类是ReplyInfo,相关联的实体表的数据是TitleInf ...
- 关于CodeFirst异常:无法确定类型'XXX'和类型‘YYY’之间的关联的主体端,必须使用关系 Fluent API 或数据注释显式配置此关联的主体端。
此错误的原因是,你配置两个实体间的关系为一对一 然而我认为的一对一关系是,两者之间必须存在一个主体, 也就是说,你不能表1的外键是表2的主键并且表1的主键是表2的外键, 这样不符合数据库式吧? 我想多 ...
随机推荐
- Android SDK更新以及ADT更新出现问题的解决办法(转载)
转自:http://zyueqi.iteye.com/blog/1474323 问题描述 使用SDK Manager更新时出现问题Failed to fetch URL https://dl-ssl. ...
- Linux 常用命令五 软链接和硬链接
一.软链接 相当于windows的快捷方式,当源文件不存在时,软链接失效. 创建软链接: wang@wang:~/workpalce/python$ ls -l 总用量 -rw-rw-r-- wang ...
- P4475 巧克力王国(KDTree)
传送门 首先可以把约束条件看成一条直线,然后每个巧克力看成一个点,求给定区域内的点权和 用KDTree,每次判断一下当前矩形是否整个都在里面或都在外面,是的话直接返回,否则的话递归 注意,必须该矩形四 ...
- 转】[1.0.2] 详解基于maven管理-scala开发的spark项目开发环境的搭建与测试
场景 好的,假设项目数据调研与需求分析已接近尾声,马上进入Coding阶段了,辣么在Coding之前需要干马呢?是的,“统一开发工具.开发环境的搭建与本地测试.测试环境的搭建与测试” - 本文详细记录 ...
- dllMain函数
Windows在加载DLL的时候,需要一个入口函数,就如同控制台或DOS程序需要main函数.Win32程序需要WinMain函数一样.一些例子中,DLL并没有提供DllMain函数,应用工程也能成功 ...
- 对数组随机赋值,并输出(Arrays.toString(arr))
import java.util.Arrays; public class Demo { public static void main(String[] args) { int[] arr = ne ...
- F 点与多边形 数学 + 观察
https://biancheng.love/contest-ng/index.html#/123/problems 做题要在纸上弄弄,才会有发现. 发现到答案只是-1和4,因为坐标都是整数. 然后就 ...
- 如何使用mysqldump命令导入导出数据库下的数据或表结构(远程or本地都适合)
不多说,直接上干货! https://www.cloudera.com/documentation/manager/5-1-x/Cloudera-Manager-Installation-Guide/ ...
- SPFarm.local返回值为null
创建了一个控制台应用程序,想输出SP2010服务器场下所有对象模型信息,结果:SPFarm.local返回值为null. 经查询解决方法: 1 .net framework版本要使用3.5: 2 目标 ...
- [转]在 Azure 云服务上设计大规模服务的最佳实践
本文转自:http://technet.microsoft.com/zh-cn/magazine/jj717232.aspx 英文版:http://msdn.microsoft.com/library ...