2013-11-20 51 views
-1

我有一個訂單表,其中包含客戶編號和完成日期。我試圖運行查詢來查看哪些客戶未訂購6個月。我試過如下:MySQL鏈接表中的年齡大於6個月

SELECT DISTINCT 
orders.Customer, 
Max(orders.DateFinished) 
FROM 
orders 
WHERE 
DATEDIFF(CURDATE(), Max(orders.DateFinished)) > 180; 
GROUP BY 
orders.Customer 

,但我得到一個

[錯誤] 1111 - 無效使用組功能的

回答

0
SELECT Customer, 
     Max(DateFinished) 
FROM orders 
GROUP BY Customer 
HAVING sum(DateFinished > CURDATE() - interval 180 day) = 0 
+0

謝謝。這可以。 –

0

try like this

SELECT DISTINCT orders.Customer, orders.DateFinished FROM orders 
WHERE DATEDIFF(CURDATE(), Max(orders.DateFinished)) > 180 
GROUP BY orders.Customer,orders.DateFinished 

要麼

select DISTINCT orders.Customer, orders.DateFinished 
    from orders 
where orders.DateFinished >= date_sub(orders.DateFinished, interval 6 month); 
+0

謝謝。工作正常 –