MySQL避免重复值
我使用下面的查询列出包含4个或更多案例SKU的订单。一旦找到这些订单,我不想重复客户的电子邮件 当前输出示例:MySQL避免重复值,mysql,select,join,Mysql,Select,Join,我使用下面的查询列出包含4个或更多案例SKU的订单。一旦找到这些订单,我不想重复客户的电子邮件 当前输出示例: Order ID | customer_email | total_cases_invoiced 5 | this@that.com | 6 45 | email1@here.com | 4 32 | email1@here.com | 7 23 | email1@here.com
Order ID | customer_email | total_cases_invoiced
5 | this@that.com | 6
45 | email1@here.com | 4
32 | email1@here.com | 7
23 | email1@here.com | 5
28 | another@email.com | 10
所需输出示例:
Order ID | customer_email | total_cases_invoiced
5 | this@that.com | 6
45 | email1@here.com | 4
28 | another@email.com | 10
当前查询:
SELECT
*, customer_email, SUM(qty_invoiced) AS total_cases_invoiced
FROM
mg_sales_flat_order_item
JOIN
mg_sales_flat_order ON mg_sales_flat_order.entity_id = mg_sales_flat_order_item.order_id
WHERE
(mg_sales_flat_order_item.sku LIKE '%A'
OR mg_sales_flat_order_item.sku LIKE '%F'
OR mg_sales_flat_order_item.sku LIKE '%B'
OR mg_sales_flat_order_item.sku LIKE '%C'
OR mg_sales_flat_order_item.sku LIKE '%FP'
OR mg_sales_flat_order_item.sku LIKE '%AP')
AND row_total != 0
GROUP BY order_id
HAVING SUM(qty_invoiced) >= 4
ORDER BY customer_email DESC
您是否尝试将您的
customer\u电子邮件
与customer\u id
一起分组
SELECT
*, customer_email, SUM(qty_invoiced) AS total_cases_invoiced
FROM
mg_sales_flat_order_item
JOIN
mg_sales_flat_order ON mg_sales_flat_order.entity_id = mg_sales_flat_order_item.order_id
WHERE
(mg_sales_flat_order_item.sku LIKE '%A'
OR mg_sales_flat_order_item.sku LIKE '%F'
OR mg_sales_flat_order_item.sku LIKE '%B'
OR mg_sales_flat_order_item.sku LIKE '%C'
OR mg_sales_flat_order_item.sku LIKE '%FP'
OR mg_sales_flat_order_item.sku LIKE '%AP')
AND row_total != 0
GROUP BY (order_id,customer_email)
HAVING SUM(qty_invoiced) >= 4
ORDER BY customer_email DESC
您是否确定结果集中显示了哪个
订单ID
和总案例数\u发票
值?您的“期望”输出似乎并不表示您关心,在这种情况下,我建议您将电子邮件地址放在您的select.mably副本中