PHP MYSQL跳过结果

时间:2018-10-03 18:49:17

标签: php mysql

我有一张这样的桌子:

product_id   price   product_special_id   priority
    1          50            1              1
    1          30            2              2                   
    1          70            3              1
    2          50            1              1
   ...         ...          ...            ...

我如何从价格低于40的表中选择product_id,并由于优先级更高的价格而跳过1?

1 个答案:

答案 0 :(得分:0)

您的问题不太清楚,但是您可以按 product_id priority 分组,并丢弃具有相同优先级的多个价格的元素,如下所示:

SELECT
    product_id,
    priority,
    MAX(price) AS price
FROM
    table_name
WHERE
    price <= 40
GROUP BY
    product_id, priority
HAVING
    COUNT(price) < 2

由于您只有一个价格的帐户组,因此汇总方法MAX()将只返回该价格。