반응형
두 개의 테이블이 있습니다.
메인 : id_main, field1, 필터
main_logs (5 천만 라인) : auto inc, id_main, path
다음 결과를 찾고 있습니다. id_main, field1, 가장 일반적인 경로
다음 쿼리를 시도했습니다.
select id_main,
field1,
(select path, count(*) as cpt
from main_log
where main_log.id_main=main.id_main group by path order by cpt desc limit 1)
from main
where filter in (1,3,5);
MySQL 반환 : 피연산자는 1 개의 열을 포함해야합니다.
경로를 제거하면 결과는 정확하지만 경로 값이 누락됩니다.
select id_main,
field1,
(select path, count(*) as cpt
from main_log
where main_log.id_main=main.id_main group by path order by cpt desc limit 1)
from main
where filter in (1,3,5);
count (*)의 결과는 필요하지 않지만 "order by"에는 필요합니다.
내 결과를 얻기 위해이 쿼리를 어떻게 작성할 수 있습니까? 감사
기본
id_main | field1 | filter
1 | red | 1
2 | blue | 3
3 | pink | 1
메인 _ 로그
autoinc | id_main | path
1 | 1 | home1
2 | 1 | home2
3 | 1 | home2
4 | 2 | house2
5 | 2 | house7
6 | 2 | house7
7 | 3 | casee
예상 결과
id_main | fields1 | most common path
1 | red | home2
2 | blue | house7
3 | pink | casee
해결 방법
다음을 사용해야합니다.
SELECT id_main, field,
(SELECT path
FROM main_logs
WHERE id_main=main.id_main
GROUP BY path
ORDER BY count(path) DESC
LIMIT 1) AS most
FROM main
WHERE filter IN (1,3,5);
테스트를 마쳤습니다.
참조 페이지 https://stackoverflow.com/questions/14032319
반응형
'MySql' 카테고리의 다른 글
MySQL MailChimp 또는 ConstantContact 등과 같은 메일 링리스트 관리자와 동등한 무료 / 오픈 소스가 있습니까? (0) | 2021.01.16 |
---|---|
MySQL ---와 ----는 mysql에서 무엇을 의미합니까? (0) | 2021.01.16 |
MySQL 텍스트 열을 고유 키로 만들기 (0) | 2021.01.16 |
MySQL LOAD DATA 오류를 해결할 수 없습니다 ...! (0) | 2021.01.16 |
MySQL의 자동 증가 varchar (0) | 2021.01.16 |
댓글