我在使用的資料庫上遇到了問題。我有一個可能包含重復值的律師表,但它們是一個注冊號,該注冊號是唯一的,可用于獲取它們。但是,我想從與案例律師表上的該列匹配的律師表的“第一個”唯一值上的 case_counsel 表中加入。
我想使用 enrolment_number 作為 cp_cases_counsel 表上的 advisor_id 列出屬于特定律師的案件。這意味著我只想選擇一個律師的不同值,然后用它來加入 cp_cases_counsel 表并回傳此類的計數。但是,我不斷收到重復項。這是我試過的 mysql 查詢
SELECT T.suitno, T.counsel_id, COUNT(*) as total from cp_cases_counsel T
INNER JOIN (SELECT
enrolment_number as id, MIN(counsel)
FROM
cp_counsel
GROUP BY
enrolment_number
) A
ON A.id = T.counsel_id
GROUP BY T.suitno, T.counsel_id
和
SELECT enrolment_number as id, MIN(counsel) as counsel, COUNT(*) as total FROM cp_counsel
JOIN cp_cases_counsel ON cp_cases_counsel.counsel_id = cp_counsel.enrolment_number
GROUP BY enrolment_number
對于第二個查詢,它加入了兩次,我得到的結果是我應該得到的兩倍。
uj5u.com熱心網友回復:
您想要在結果中的列councel(實際上只是其所有值之一) fromcp_counsel和counsel_idfrom cp_cases_counsel,因此您必須按它們分組并選擇它們:
SELECT a.counsel, t.counsel_id, COUNT(*) AS total
FROM cp_cases_counsel t
INNER JOIN (
SELECT enrolment_number, MIN(counsel) AS counsel
FROM cp_counsel
GROUP BY enrolment_number
) a ON a.enrolment_number = t.counsel_id
GROUP BY a.counsel, t.counsel_id;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/354206.html
上一篇:如何在Laravel中將原始資料庫查詢轉換為查詢生成器
下一篇:tld檔案無效,但它是檔案名
