2015-08-27 57 views
0

之间MySQL的平均差异谁能帮我对这个查询?我正在查看accommodation_offer.created_at和booking.requested_at,查看第一个和第二个最小结果之间的差异。两个日期

我发现了一个未知列在“字段列表” minbooking“错误

我已经创建minbooking我最初认为有嵌套查询将与AVG(DATEDIFF(MIN(查询我有帮助从那时起,我已经删除了嵌套的Select,并一直尝试这种方式,但没有成功

顺便提一下,一个优惠可以有多个预订我期待有结果按城市分组,然后通过提供创建的日期和然后提供示出创建和每个提议的第一预订之间的平均时间差。

SELECT 
accommodation_offer.created_at_month AS "Month of Offer Created", 
property.address_city_code AS "City", 
MIN(booking.requested_at) AS minbooking, 
AVG(DATEDIFF(minbooking,accommodation_offer.created_at)) AS "Time Span in  Days" 
FROM booking 
INNER JOIN accommodation_offer 
ON accommodation_offer.id=booking.offer_id 
INNER JOIN property 
ON accommodation_offer.property_id=property.id 
GROUP BY property.address_city_code, accommodation_offer.created_at_month 
ORDER BY property.address_city_code, accommodation_offer.created_at_month ASC 
+0

,不能直接提一个别名为select语句(另一列在您的EXA。您所使用的别名“minbooking”在另一列“时间跨度在天”) –

回答

0

试试这个

SELECT 
accommodation_offer.created_at_month AS "Month of Offer Created", 
property.address_city_code AS "City", 
MIN(booking.requested_at) AS minbooking, 
AVG(DATEDIFF(MIN(booking.requested_at),accommodation_offer.created_at_month)) AS 
"Time Span in  Days" 
FROM booking 
INNER JOIN accommodation_offer 
ON accommodation_offer.id=booking.offer_id 
INNER JOIN property 
ON accommodation_offer.property_id=property.id 
GROUP BY property.address_city_code, accommodation_offer.created_at_month 
ORDER BY property.address_city_code, accommodation_offer.created_at_month 
ASC 
+0

感谢拉吉,这将返回我的第一个错误,导致我试图分裂AVG(DATEDIFF(MIN最初“无效使用组功能的” – PMARUNIP

+0

拉吉嗨,我要说的是,它仍然返回我的错误...别名“无效使用组功能的” – PMARUNIP

+0

@PMARUNIP .ohhhķ...... –