0

好的,所以我想要做的是仅对具有此特定 ID 的一个条件/特定行/行使用开始和结束日期。

例如,如果order_status='1' ONLY 则使用开始和结束日期,如果order_status='2'则选择 ALL。我正在使用 PHP 从我的数据库中获取这些信息,然后将它们存储在一个数组中。

目前,我有两个不同的查询可以为我完成这项工作,但我目前必须将它们存储在两个不同的数组中,并将它们也显示为两个不同的数组。我想要一种方法将所有这些存储到一个数组中,然后使用 foreach 循环在一个地方回显两个条件的所有结果。

希望它足够清楚,但如果没有,请通过评论让我知道,我也会包括我的代码和查询。

查询导出日期(order_status=1)

   SELECT ov.order_number,
   m.name           AS brand,
   op.name          AS model,
   op.product_grade AS grade,
   o.date_added
   FROM   `order` o,
   op.order_product_veri,
   manufacturer m,
   product p
   WHERE  opv.product_id = p.product_id
   AND p.manufacturer_id = m.manufacturer_id
   AND op.order_status = '1'
   AND Date (o.date_added) >= '2013-10-22'
   AND Date(o.date_added) <= '2013-11-02'  

查询日期导出(order_status=2)

   SELECT op.order_number,
   m.name           AS brand,
   op.name          AS model,
   op.product_grade AS grade,
   o.date_added
   FROM   `order` o,
   op.order_product_veri,
   manufacturer m,
   product p
   WHERE  opv.product_id = p.product_id
   AND p.manufacturer_id = m.manufacturer_id
   AND op.order_status = '2'  
4

1 回答 1

0
SELECT 
    op.order_number, 
    m.name AS brand, 
    op.name AS model, 
    op.product_grade AS grade, 
    o.date_added 
FROM 
    order o, 
    op.order_product_veri, 
    manufacturer m, 
    product p 
WHERE 
    opv.product_id = p.product_id and 
    p.manufacturer_id = m.manufacturer_id and
    (
        op.order_status = '2' or 
        (op_order_status = '1' and date(o.date_added) >= '2013-10-22' and date(o.date_added) <= '2013-11-02'
    )
于 2013-11-02T00:21:17.277 回答