SQL: 여러 테이블에서 조합 선택 개수(*)
다른 테이블의 여러 선택 횟수(*)를 하나의 반환으로 결합하려면 어떻게 해야 합니까?
저도 이 글과 비슷한 상황입니다.
하지만 한번만 돌려주세요
유니언을 시도해봤는데 세 줄의 카운트를 다시 집어넣었어요.어떻게 그것들을 하나로 합칠 수 있습니까?
select count(*) from foo1 where ID = '00123244552000258'
union all
select count(*) from foo2 where ID = '00123244552000258'
union all
select count(*) from foo3 where ID = '00123244552000258'
edit: MS SQL 2005에 나와 있습니다.
SELECT
(select count(*) from foo1 where ID = '00123244552000258')
+
(select count(*) from foo2 where ID = '00123244552000258')
+
(select count(*) from foo3 where ID = '00123244552000258')
이것은 쉬운 방법입니다.
아무도 이런 변화를 제안하지 않았다는 것이 놀랍습니다.
SELECT SUM(c)
FROM (
SELECT COUNT(*) AS c FROM foo1 WHERE ID = '00123244552000258'
UNION ALL
SELECT COUNT(*) FROM foo2 WHERE ID = '00123244552000258'
UNION ALL
SELECT COUNT(*) FROM foo3 WHERE ID = '00123244552000258'
);
select
(select count(*) from foo) as foo
, (select count(*) from bar) as bar
, ...
기본적으로 표준 선택 내에서 하위 쿼리로 카운트를 수행합니다.
예를 들면 다음과 같습니다. 이것은 1 행, 2 열을 반환합니다.
SELECT
(SELECT COUNT(*) FROM MyTable WHERE MyCol = 'MyValue') AS MyTableCount,
(SELECT COUNT(*) FROM YourTable WHERE MyCol = 'MyValue') AS YourTableCount,
전에 했던 것처럼 카운트를 결합할 수 있지만, 다음과 같은 여러 가지 방법으로 카운트를 모두 요약할 수 있습니다. 그 중 하나는 다음과 같습니다.
SELECT SUM(A)
FROM
(
SELECT 1 AS A
UNION ALL
SELECT 1 AS A
UNION ALL
SELECT 1 AS A
UNION ALL
SELECT 1 AS A
) AS B
select sum(counts) from (
select count(1) as counts from foo
union all
select count(1) as counts from bar)
모든 필드의 이름을 지정하고 해당 필드에 외부 선택을 추가할 수 있습니다.
SELECT A, B, C FROM ( your initial query here ) TableAlias
그것이 효과가 있어야 해요.
오라클의 경우:
select(
select count(*) from foo1 where ID = '00123244552000258'
+
select count(*) from foo2 where ID = '00123244552000258'
+
select count(*) from foo3 where ID = '00123244552000258'
) total from dual;
언급URL : https://stackoverflow.com/questions/1279569/sql-combine-select-count-from-multiple-tables
'programing' 카테고리의 다른 글
last_value window 함수가 제대로 작동하지 않습니다. (0) | 2023.10.31 |
---|---|
TextReader 대신 문자열에서 역직렬화 (0) | 2023.10.31 |
mysql의 테이블에서 N개의 레코드를 선택하는 방법 (0) | 2023.10.31 |
프로세스에 대한 메모리 할당이 느리고 더 빠를 수 있는 이유는 무엇입니까? (0) | 2023.10.26 |
jQuery scroll() 사용자가 스크롤을 중지할 때 탐지 (0) | 2023.10.26 |