-1
봐 조인 수행 방법 : 두 테이블 worldUsersVertica의 또는 다른 SQL 서버 수행이가 내 옆에 Vertica의 쿼리에서
WITH groupA AS (
SELECT
userId,
color
FROM worldUsers
WHERE DayPartition = 409
AND Hour = 12
)
SELECT
color = 12 AS userColor,
REGEXP_LIKE(familyName, '[a-z]+ish', 'i') ishPeople,
REGEXP_LIKE(familyName, '[a-z]+lem', 'i') lemPeople,
count(*) AS peopleCount,
round(count(*)/sum(count(*))
OVER(), 5.0) * 100 || '%' AS peoplePercentage
FROM PlanetUsers
JOIN groupA USING (userId)
WHERE DayPartition = 409
GROUP BY 1, 2, 3
ORDER BY 4 DESC
및 필드 Hour
을 가지고 그들은 모두 DayPartition
필드로 분할 PlanetUsers합니다. 그것은
USING (userId)
에서 using 문을 을 우리가
WHERE DayPartition = 409 and AND Hour = 12
에
WHERE DayPartition = 409
에서 아래 쿼리
의 경우 문을 변경하면 성능을 향상 또는 변경됩니다
에USING (userId, Hour)
는 DayPartition
의 파티션을 제외하고 어떤 기본 키 및 파티션 만 CTE의 초기 추출에 사용되는 돌기가