簡體   English   中英

Double Count Select返回錯誤結果

[英]Double Count Select return wrong result

您好,我正在使用以下查詢來顯示行數,其中id是第一個表中的相同數字,我還有2個表。 如果我只留下一個計數,那么一切都可以正常工作,但是如果選擇了兩次計數,我將得到相同的結果,這是錯誤的:

'SELECT c.*, count(s.userID) as count_consulta, count(a.userID) as count_asesoria
   FROM users as c 
   LEFT JOIN consulta AS s ON s.userID = c.userID 
   LEFT JOIN asesoria AS a ON a.userID = c.userID
   GROUP BY c.userID DESC'

有了這個我得到:

count_consulta = 15
count_asesoria = 15

應該在哪里

count_consulta = 3
count_asesoria = 5

任何幫助都將受到歡迎。 謝謝!

有了“將歡迎任何幫助”的說法,我將其扔在那里,看看它是否符合您的意思。

$sql="select *,
    ( select count( distinct s.`userID` ) from `consulta` ) as 'count_consulta',
    ( select count( distinct a.`userID` ) from `asesoria` ) as 'count_asesoria'
    from `users` c
        left outer join `consulta` s on s.`userID`=c.`userID`
        left outer join `asesoria` a on a.`userID`=c.`userID`
    group by c.`userID` desc;";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM