我有一个表 customer_order 如下
mysql> select * from customer_order;
+---------+---------+-----------+------------------+----------------+
| cust_id | orderno | region_cd | order_start_date |order_del_date |
+---------+---------+-----------+------------------+----------------+
| CU_082 | ONO_001 | reg1 | 2012-04-25 | 2012-08-25 |
| CU_082 | ONO_002 | reg1 | 2012-04-28 | 2012-11-28 |
| CU_083 | ONO_002 | reg2 | 2012-04-28 | 2012-11-28 |
| CU_082 | ONO_003 | reg1 | 2012-04-25 | 2012-08-25 |
| CU_084 | ONO_004 | reg4 | 2012-04-25 | 2012-10-25 |
我需要一张这样的桌子……我得到……如下
mysql> select order_start_date,order_del_date,orderno,cust_id from customer_order wh
ere order_start_date >= '2012-04-25' AND order_del_date <='2012-12-28' and cust_i
d IN ('36082','36088') order by cust_id ;
+------------------+----------------+---------+---------+
| order_start_date | order_del_date | pid | emp_id |
+------------------+----------------+---------+---------+
| 2012-04-25 | 2012-05-25 | ONO_001 | CU_082 |
| 2012-08-22 | 2012-12-28 | ONO_004 | CU_082 |
| 2012-06-22 | 2012-08-28 | ONO_003 | CU_082 |
| 2012-05-27 | 2012-06-25 | ONO_002 | CU_082 |
| 2012-04-25 | 2012-05-25 | ONO_001 | CU_082 |
| 2012-05-27 | 2012-06-25 | ONO_001 | CU_082 |
| 2012-04-30 | 2012-06-25 | ONO_001 | CU_088 |
| 2012-06-28 | 2012-07-15 | ONO_002 | CU_088 |
| 2012-07-28 | 2012-08-25 | ONO_003 | CU_088 |
| 2012-07-16 | 2012-09-25 | ONO_004 | CU_088 |
+------------------+----------------+---------+---------+
现在我需要在这张表上查询......为了在这里为每个客户获取数据,我们在上表中获取从 wat 日期到 wat 日期期间他的订单处理详细信息的数据......现在对于每个客户,我会找到thr 没有订单处理...
例如cust_id =CU_088
,他的订单从 4 月 30 日到 6 月 25 日处理,从 6 月 28 日到 7 月 15 日(这里 thr 是一个差异,即 thr 是 6 月 26 日到 27 日没有接受订单或任何处理完成......这是必需的结果) **另外一个考虑因素是......在下一个条目中,我们发现 thr 是从 7 月 28 日到 8 月 25 日的订单流程,相对于之前的条目,即 6 月 28 日到 7 月 15 日,我们发现对于这个客户,thr 没有接受或处理订单从 7 月 16 日到 27 日.. 但是最后一个条目是 7 月 16 日到 9 月 25 日,他有一个不同 order_no 的订单,因为这里填补了 7 月 16 日到 7 月 27 日的空白,所以这种情况也需要检查。 .我需要得到这样的输出..
+------------------+----------------+---------+---------+
| order_start_date | order_del_date | pid | emp_id |
+------------------+----------------+---------+---------+
| 2012-06-26 | 2012-06-27 | ONO_001 | CU_088 |
+------------------+----------------+---------+---------+
那是更有效的查询或程序应该给我在 thr 期间没有为客户执行任何操作...帮助我编写执行上述所有操作的查询。
我是数据库查询的新手..所以请帮帮我..