2016-10-20 52 views
0

Hai我是php和mysql的新手。這裏想要加入三個不同的要求。 這裏是我的查詢加入三個不同的mysql查詢表

查詢1:

SELECT u.user_name,u.first_name 
FROM users u join users_cstm uc on u.id=uc.id_c 
WHERE u.deleted=0? 

QUERY2:

SELECT l.assigned_user_id,count(*) AS lead_count 
FROM lead l GROUP BY l.assigned_user_id? 

QUERY3:

SELECT l.assigned_user_id,AVG(DATEDIFF(l.date_modified,l.date_entered)) AS avgdays 
FROM leads l GROUP BY l.assigned_user_id? 

和so..on ..

這是我期待的結果for user_name,first_name,lead_count,avgdays。從三張桌子。

BigQuery join of three tables

我試圖從上面的鏈接我的解決方案。但是我沒有得到結果?

謝謝你的幫助和建議。

+0

你想要什麼結果呢? –

+0

@ reds,這是我正在尋找user_name,first_name,lead_count,avgdays的結果。如果我執行這個SELECT u.user_name,u.first_name FROM用戶你加入users_cstm uc在u.id = uc.id_c WHERE u.deleted = 0,我得到user_name,first_name的結果。 – whoami

+0

什麼是您的查詢問題然後 –

回答

0

試試下面的查詢: -

SELECT u.user_name,u.first_name, 
lead_table.lead_count,lead_table.avgdays 
FROM users u join users_cstm uc on u.id=uc.id_c 
left join 
(SELECT l.assigned_user_id, 
     AVG(l.date_modified) AS avgdays, 
     count(*) AS lead_count 
FROM leads l GROUP BY l.assigned_user_id) lead_table 
on u.id=lead_table.assigned_user_id 
WHERE u.deleted=0; 
+0

謝謝你的工作。但我有多個條件的10個查詢。我必須以同樣的方式加入。 – whoami

+0

這裏是我不同的問題這裏是列表。 $ sql_query2 =「SELECT l.assigned_user_id,count(*)as lead_count FROM leads l group by l.assigned_user_id」; $ sql_query3 =「SELECT l.assigned_user_id,AVG(DATEDIFF(l.date_modified,l.date_entered))AS avgdays FROM leads l group by l.assigned_user_id」; $ sql_query4 =「SELECT c.assigned_user_id,count(*)as calls_count FROM calls c group by c.assigned_user_id」; 等。我想結合所有這些,並獲得單一的解決方案來顯示值http://stackoverflow.com/questions/16364187/combining-2-sql-queries-and-getting-result-set-in-one – whoami

0

試試這個:

SELECT id,user_name,first_name,lead_count,avgdays from 
(SELECT id,user_name,first_name,lead_count from 
(SELECT u.id,u.user_name,u.first_name FROM users u,users_cstm uc where u.id=uc.id_c and u.deleted=0) as a 

LEFT JOIN 

(SELECT l.assigned_user_id,count(*) AS lead_count FROM lead l GROUP BY l.assigned_user_id) as b 
on a.id = b.assigned_user_id) as a 

LEFT JOIN 

(SELECT l.assigned_user_id,AVG(DATEDIFF(l.date_modified,l.date_entered)) AS avgdays 
FROM leads l GROUP BY l.assigned_user_id) as b 
on a.id = b.assigned_user_id 
+0

我假設id和assigned_user_id都有相對的約束。我假設它一樣。如果我的猜測錯誤,你可以改變它。 –

+0

謝謝我將運行此查詢。 – whoami

+0

我沒有得到任何結果。該頁面顯示爲空白。 – whoami