我不知道如何做到這一點。從MYSQL SELECT到MYSQL VIEW
背景:
概況 - >與用戶表型材
得分 - >與用戶的評分表(一個用戶可以有多個得分)(此表有created_at領域,知道什麼時候我介紹新的分數)
想象一下,得分表保存klout得分數據。
如何將此查詢轉換爲視圖?
SELECT t1.id,
t1.name,
t1.screen_name,
t1.description,
t1.url,
t1.statuses_count,
t1.followers_count,
t1.friends_count,
t1.listed_count,
t1.favourites_count,
t1.utc_offset,
t1.time_zone,
t1.verified,
t1.lang,
t1.profile_image_url,
t1.geo_enabled,
t1.location,
t1.lat,
t1.lng,
t1.created_at,
t3.score,
t3.delta,
t3.detail
FROM profiles t1 LEFT JOIN (SELECT t2.user_id, t2.score, t2.delta, t2.detail
FROM scores t2
ORDER BY t2.created_at DESC)
AS t3 ON t3.user_id = t1.id
GROUP BY t1.id
背景: 用戶配置文件 - >表與用戶配置文件 得分 - >與用戶的得分表(一個用戶可以有多個得分)(此表有一個created_at領域,知道什麼時候我介紹新的得分) 想象一下,得分表保存klout得分數據。 –
我也沒有得到這個組。通常只有在聚合時才考慮分組。對於例如:a.name,a.id,sum(a.amt_paid)從一個表組a.name,a.id = summed amt支付每個唯一的名稱和ID組合....沒有理由上面使用group by或者left join中的select,它只是讓你的查詢永遠計算,而你的查詢默認按照ID進行分組,因爲它是查詢中的第一個元素 – Hituptony