เจฌเจนเฉเจค เจธเจพเจฐเฉ เจเฉ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจตเจฐเจค เจฐเจนเฉ เจนเจจ
... เจ
เจจเฉเจธเจพเจฐเฉ เจฏเฉเจเจจเจพ เจจเฉเจกเจพเจ เจฒเจ เจชเฉเจฐเจธเฉฐเจเจฟเจ เจธเฉฐเจเฉเจคเจพเจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจธเฉเฉฐเจฆเจฐ เจขเฉฐเจ เจจเจพเจฒ เจกเจฟเจเจผเจพเจเจจ เจเฉเจคเฉ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจตเจฟเฉฑเจ:
เจเจธเจฆเฉ เจฆเฉเจเฉ เจญเจพเจ เจฆเฉ เจเจธ เจชเฉเจฐเจคเฉเจฒเจฟเจชเฉ เจตเจฟเฉฑเจ
เจชเจนเจฟเจฒเฉ เจญเจพเจ เจฆเฉ เจชเฉเจฐเจคเฉเจฒเจฟเจชเฉ, เจเจพเจธ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจธเจฎเฉฑเจธเจฟเจเจตเจพเจ เจ เจคเฉ เจเจนเจจเจพเจ เจฆเฉ เจนเฉฑเจฒเจพเจ เจจเฉเฉฐ เจธเจฎเจฐเจชเจฟเจค, เจฒเฉเจ เจตเจฟเฉฑเจ เจฒเฉฑเจญเฉ เจเจพ เจธเจเจฆเฉ เจนเฉ
"เจฌเฉเจฎเจพเจฐ SQL เจธเจตเจพเจฒเจพเจ เจฒเจ เจชเจเจตเจพเจจเจพ" .
เจชเจนเจฟเจฒเจพเจ, เจเจ เจฐเฉฐเจ เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเฉเจ - เจ เจคเฉ เจ เจธเฉเจ เจนเฉเจฃ เจฏเฉเจเจจเจพ เจจเฉเฉฐ เจฐเฉฐเจ เจจเจนเฉเจ เจฆเฉเจตเจพเจเจเฉ, เจ เจธเฉเจ เจเจธเจจเฉเฉฐ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจฐเฉฐเจ เจฆเจฟเฉฑเจคเจพ เจนเฉ, เจธเจพเจกเฉ เจเฉเจฒ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจเจน เจธเฉเฉฐเจฆเจฐ เจ เจคเฉ เจธเจฎเจเจฃ เจฏเฉเจ เจนเฉ, เจชเจฐ เจเฉฑเจ เจฌเฉเจจเจคเฉ.
เจเจน เจธเจพเจจเฉเฉฐ เจเจพเจชเจฆเจพ เจธเฉ เจเจฟ เจ
เจเจฟเจนเฉ เจเฉเจฐ-เจซเจพเจฐเจฎเฉเจเจก "เจธเจผเฉเจ" เจจเจพเจฒ เจฒเฉเจ เจคเฉเจ เจเจฟเฉฑเจเฉ เจเจ เจฌเฉเจจเจคเฉ เจฌเจนเฉเจค เจฌเจฆเจธเฉเจฐเจค เจ
เจคเฉ เจเจธเจฒเจ เจ
เจธเฉเจตเจฟเจงเจพเจเจจเจ เจฒเฉฑเจเจฆเฉ เจนเฉเฅค
เจเจผเจพเจธเจเจฐ เจเจฆเฉเจ เจกเจฟเจตเฉเจฒเจชเจฐ เจเฉเจก เจตเจฟเฉฑเจ เจฌเฉเจจเจคเฉ เจฆเฉ เจธเจฐเฉเจฐ เจจเฉเฉฐ "เจเฉเฉฐเจฆ" เจเจฐเจฆเฉ เจนเจจ (เจเจน, เจฌเฉเจธเจผเจ, เจเฉฑเจ เจเจเจเฉเจชเฉเจเจฐเจจ เจนเฉ, เจชเจฐ เจ
เจเจฟเจนเจพ เจนเฉเฉฐเจฆเจพ เจนเฉ) เจเฉฑเจ เจฒเจพเจเจจ เจตเจฟเฉฑเจ. เจญเจฟเจเจจเจ!
เจเจฒเฉ เจเจธ เจจเฉเฉฐ เจนเฉเจฐ เจตเฉ เจเฉเจฌเจธเฉเจฐเจคเฉ เจจเจพเจฒ เจเจฟเฉฑเจเฉเจเฅค
เจ
เจคเฉ เจเฉ เจ
เจธเฉเจ เจเจธ เจจเฉเฉฐ เจธเฉเฉฐเจฆเจฐเจคเจพ เจจเจพเจฒ เจเจฟเฉฑเจ เจธเจเจฆเฉ เจนเจพเจ, เจญเจพเจต, เจฌเฉเจจเจคเฉ เจฆเฉ เจฎเฉเฉฑเจ เจนเจฟเฉฑเจธเฉ เจจเฉเฉฐ เจตเฉฑเจ เจเจฐ เจธเจเจฆเฉ เจนเจพเจ เจ
เจคเฉ เจตเจพเจชเจธ เจเฉเฉ เจธเจเจฆเฉ เจนเจพเจ, เจคเจพเจ เจ
เจธเฉเจ เจซเจฟเจฐ เจเจธ เจฌเฉเจจเจคเฉ เจฆเฉ เจนเจฐเฉเจ เจเจฌเจเฉเจเจ เจฒเจ เจเฉฑเจ เจธเฉฐเจเฉเจค "เจจเฉฑเจฅเฉ" เจเจฐ เจธเจเจฆเฉ เจนเจพเจ - เจฏเฉเจเจจเจพ เจฆเฉ เจ
เจจเฉเจธเจพเจฐเฉ เจฌเจฟเฉฐเจฆเฉ 'เจคเฉ เจเฉ เจนเฉเจเจเฅค
เจธเจตเจพเจฒ เจธเฉฐเจเฉเจเจธ เจเฉเจฐเฉ
เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ, เจฌเฉเจจเจคเฉ เจจเฉเฉฐ เจชเจนเจฟเจฒเจพเจ เจชเจพเจฐเจธ เจเฉเจคเจพ เจเจพเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค
เจเจฟเจเจเจเจฟ เจธเจพเจกเฉ เจเฉเจฒ เจนเฉ
เจ
เจธเฉเจ เจฌเฉเจจเจคเฉ เจฆเฉ เจฎเฉเฉฑเจ เจญเจพเจ เจจเฉเฉฐ เจธเจพเจกเฉ เจซเฉฐเจเจธเจผเจจ เจฒเจ เจเจจเจชเฉเจ เจตเจเฉเจ เจซเฉเจก เจเจฐเจฆเฉ เจนเจพเจ - เจเจเจเจชเฉเฉฑเจ 'เจคเฉ เจธเจพเจจเฉเฉฐ JSON เจตเจธเจคเฉ เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ เจเฉฑเจ เจชเจพเจฐเจธเจก เจธเจฟเฉฐเจเฉเจเจธ เจเฉเจฐเฉ เจฎเจฟเจฒเจฆเจพ เจนเฉเฅค
เจนเฉเจฃ เจ
เจธเฉเจ เจเจธ เจเฉเจฐเฉ เจจเฉเฉฐ เจเจฒเจ เจฆเจฟเจธเจผเจพ เจตเจฟเฉฑเจ เจเจฒเจพ เจธเจเจฆเฉ เจนเจพเจ เจ
เจคเฉ เจเฉฐเจกเฉเจเจเจธ, เจเจฒเจฐเจฟเฉฐเจ, เจ
เจคเฉ เจซเจพเจฐเจฎเฉเจเจฟเฉฐเจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจฌเฉเจจเจคเฉ เจเจเฉฑเจ เฉ เจเจฐ เจธเจเจฆเฉ เจนเจพเจ เจเฉ เจ
เจธเฉเจ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจเฅค เจจเจนเฉเจ, เจเจน เจ
เจจเฉเจเฉเจฒเจฟเจค เจจเจนเฉเจ เจนเฉ, เจชเจฐ เจเจน เจธเจพเจจเฉเฉฐ เจฒเฉฑเจเจฆเจพ เจธเฉ เจเจฟ เจเจน เจธเฉเจตเจฟเจงเจพเจเจจเจ เจนเฉเจตเฉเจเจพเฅค
เจฎเฉเจชเจฟเฉฐเจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจ เจคเฉ เจฏเฉเจเจจเจพ เจจเฉเจก
เจนเฉเจฃ เจเจ เจฆเฉเจเฉเจ เจเจฟ เจ เจธเฉเจ เจเจธ เจฏเฉเจเจจเจพ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจเฉเฉ เจธเจเจฆเฉ เจนเจพเจ เจเจฟเจธเจฆเจพ เจ เจธเฉเจ เจชเจนเจฟเจฒเฉ เจชเฉเจพเจ เจตเจฟเฉฑเจ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเฉเจคเจพ เจธเฉ เจ เจคเฉ เจเจธ เจธเจตเจพเจฒ เจฆเจพ เจเจฟเจธเจฆเจพ เจ เจธเฉเจ เจฆเฉเจเฉ เจชเฉเจพเจ เจตเจฟเฉฑเจ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเฉเจคเจพ เจธเฉเฅค
เจเจ เจเฉฑเจ เจธเจงเจพเจฐเจจ เจเจฆเจพเจนเจฐเจจ เจฒเจเจ - เจธเจพเจกเฉ เจเฉเจฒ เจเฉฑเจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจนเฉ เจเฉ เจเฉฑเจ CTE เจคเจฟเจเจฐ เจเจฐเจฆเฉ เจนเฉ เจ
เจคเฉ เจเจธ เจคเฉเจ เจฆเฉ เจตเจพเจฐ เจชเฉเฉเจนเจฆเฉ เจนเฉเฅค เจเจน เจ
เจเจฟเจนเฉ เจฏเฉเจเจจเจพ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉเฅค
CTE
เจเฉ เจคเฉเจธเฉเจ เจเจธ เจจเฉเฉฐ เจงเจฟเจเจจ เจจเจพเจฒ เจฆเฉเจเจฆเฉ เจนเฉ, เจธเฉฐเจธเจเจฐเจฃ 12 เจคเฉฑเจ (เจเจพเจ เจเจธ เจคเฉเจ เจเฉเจตเจฐเจก เจจเจพเจฒ เจธเจผเฉเจฐเฉ เจเจฐเจฆเฉ เจนเฉเจ MATERIALIZED
) เจเจ เจจ
เจเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉ เจเจฟ เจเฉเจเจฐ เจ
เจธเฉเจ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจเจฟเจคเฉ เจเฉฑเจ CTE เจชเฉเฉเฉเจนเฉ เจ
เจคเฉ เจฏเฉเจเจจเจพ เจตเจฟเฉฑเจ เจเจฟเจคเฉ เจเฉฑเจ เจจเฉเจก เจฆเฉเจเจฆเฉ เจนเจพเจ CTE
, เจซเจฟเจฐ เจเจน เจจเฉเจก เจจเจฟเจธเจผเจเจค เจคเฉเจฐ 'เจคเฉ เจเจ เจฆเฉเจเฉ เจจเจพเจฒ "เจฒเฉเจฆเฉ เจนเจจ", เจ
เจธเฉเจ เจเจนเจจเจพเจ เจจเฉเฉฐ เจคเฉเจฐเฉฐเจค เจเฉเฉ เจธเจเจฆเฉ เจนเจพเจ.
เจเฉฑเจ เจคเจพเจฐเฉ เจจเจพเจฒ เจธเจฎเฉฑเจธเจฟเจ: CTEs เจจเฉเฉฐ เจจเฉเจธเจ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉเฅค
เจเฉฑเจฅเฉ เจฌเจนเฉเจค เจฎเจพเฉเฉ เจเจฒเฉเจนเจฃเฉ เจนเจจ, เจ
เจคเฉ เจเฉฑเจฅเฉเจ เจคเฉฑเจ เจเจฟ เจเฉฑเจเฉ เจจเจพเจฎ เจฆเฉ เจตเฉเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจคเฉเจธเฉเจ เจ
เฉฐเจฆเจฐ เจเจฐ เจธเจเจฆเฉ เจนเฉ CTE A
เจฌเจฃเจพเจเจฃ เจฒเจ CTE X
, เจ
เจคเฉ เจ
เฉฐเจฆเจฐ เจเจธเฉ เจชเฉฑเจงเจฐ 'เจคเฉ CTE B
เจเจธ เจจเฉเฉฐ เจฆเฉเจฌเจพเจฐเจพ เจเจฐเฉ CTE X
:
WITH A AS (
WITH X AS (...)
SELECT ...
)
, B AS (
WITH X AS (...)
SELECT ...
)
...
เจคเฉเจฒเจจเจพ เจเจฐเจฆเฉ เจธเจฎเฉเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจน เจธเจฎเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ. เจเจธ เจจเฉเฉฐ "เจเจชเจฃเฉเจเจ เจ เฉฑเจเจพเจ เจจเจพเจฒ" เจธเจฎเจเจฃเจพ - เจเฉฑเจฅเฉเจ เจคเฉฑเจ เจเจฟ เจฏเฉเจเจจเจพ เจจเฉเฉฐ เจตเฉเจเจฃเจพ, เจฌเฉเจจเจคเฉ เจฆเฉ เจธเจฐเฉเจฐ เจจเฉเฉฐ เจตเฉ เจตเฉเจเจฃเจพ - เจฌเจนเฉเจค เจฎเฉเจธเจผเจเจฒ เจนเฉเฅค เจเฉเจเจฐ เจคเฉเจนเจพเจกเฉ CTE เจชเฉเฉเฉเจนเฉ เจเฉเฉฐเจเจฒเจฆเจพเจฐ เจนเฉ, เจจเฉเจธเจเจก เจนเฉ, เจ เจคเฉ เจฌเฉเจจเจคเฉเจเจ เจตเฉฑเจกเฉเจเจ เจนเจจ, เจคเจพเจ เจเจน เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ เจฌเฉเจนเฉเจธเจผ เจนเฉเฅค
เจฏเฉเจจเฉเจ เจจ
เจเฉเจเจฐ เจธเจพเจกเฉ เจเฉเจฒ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจตเจฟเฉฑเจ เจเฉฑเจ เจเฉเจตเจฐเจก เจนเฉ UNION [ALL]
(เจฆเฉ เจจเจฎเฉเจจเจฟเจเจ เจจเฉเฉฐ เจเฉเฉเจจ เจฆเจพ เจเจชเจฐเฉเจเจฐ), เจซเจฟเจฐ เจฏเฉเจเจจเจพ เจตเจฟเฉฑเจ เจเจน เจเจพเจ เจคเจพเจ เจเฉฑเจ เจจเฉเจก เจจเจพเจฒ เจฎเฉเจฒ เจเจพเจเจฆเจพ เจนเฉ Append
, เจเจพเจ เจเฉเจ Recursive Union
.
เจเฉ "เจเฉฑเจชเจฐ" เจนเฉ UNION
- เจเจน เจธเจพเจกเฉ เจจเฉเจก เจฆเจพ เจชเจนเจฟเจฒเจพ เจเฉฑเจคเจฐเจพเจงเจฟเจเจพเจฐเฉ เจนเฉ, เจเฉ เจเจฟ "เจนเฉเจ เจพเจ" เจนเฉ - เจฆเฉเจเจพเฅค เจฆเฉเจเจฐเจพ เจเฉ UNION
เจธเจพเจกเฉ เจเฉเจฒ เจเฉฑเจ เจตเจพเจฐ เจตเจฟเฉฑเจ เจเจ เจฌเจฒเจพเจ "เจเฉเฉฑเจเฉ" เจนเจจ, เจซเจฟเจฐ Append
-เจ
เจเฉ เจตเฉ เจธเจฟเจฐเจซ เจเฉฑเจ เจจเฉเจก เจนเฉเจตเฉเจเจพ, เจชเจฐ เจเจธ เจตเจฟเฉฑเจ เจฆเฉ เจจเจนเฉเจ, เจชเจฐ เจฌเจนเฉเจค เจธเจพเจฐเฉ เจฌเฉฑเจเฉ เจนเฉเจฃเจเฉ - เจเฉเจฐเจฎเจตเจพเจฐ เจเจน เจเจพเจเจฆเฉ เจนเจจ:
(...) -- #1
UNION ALL
(...) -- #2
UNION ALL
(...) -- #3
Append
-> ... #1
-> ... #2
-> ... #3
เจเฉฑเจ เจคเจพเจฐเฉ เจจเจพเจฒ เจธเจฎเฉฑเจธเจฟเจ: เจเจตเจฐเจคเฉ เจจเจฎเฉเจจเจพ เจฌเจฃเจพเจเจฃ เจฆเฉ เจ
เฉฐเจฆเจฐ (WITH RECURSIVE
) เจเฉฑเจ เจคเฉเจ เจตเฉฑเจง เจตเฉ เจนเฉ เจธเจเจฆเฉ เจนเจจ UNION
. เจชเจฐ เจเจเจฐเฉ เจฌเจฒเจพเจ เจคเฉเจ เจฌเจพเจ
เจฆ เจธเจฟเจฐเจซ เจฌเจนเฉเจค เจนเฉ เจเจเจฐเฉ เจฌเจฒเจพเจ เจนเจฎเฉเจธเจผเจพ เจเจตเจฐเจคเฉ เจนเฉเฉฐเจฆเจพ เจนเฉ UNION
. เจเจชเจฐเฉเจเจค เจธเจญ เจเฉเจ เจเฉฑเจ เจนเฉ, เจชเจฐ เจตเฉฑเจเจฐเจพ เจนเฉ UNION
:
WITH RECURSIVE T AS(
(...) -- #1
UNION ALL
(...) -- #2, ััั ะบะพะฝัะฐะตััั ะณะตะฝะตัะฐัะธั ััะฐััะพะฒะพะณะพ ัะพััะพัะฝะธั ัะตะบัััะธะธ
UNION ALL
(...) -- #3, ัะพะปัะบะพ ััะพั ะฑะปะพะบ ัะตะบัััะธะฒะฝัะน ะธ ะผะพะถะตั ัะพะดะตัะถะฐัั ะพะฑัะฐัะตะฝะธะต ะบ T
)
...
เจคเฉเจนเจพเจจเฉเฉฐ เจ
เจเจฟเจนเฉเจเจ เจเจฆเจพเจนเจฐเจฃเจพเจ เจจเฉเฉฐ "เจธเจเจฟเฉฑเจ เจเจเจ" เจเจฐเจจ เจฆเฉ เจฏเฉเจ เจนเฉเจฃ เจฆเฉ เจตเฉ เจฒเฉเฉ เจนเฉเฅค เจเจธ เจเจฆเจพเจนเจฐเจฃ เจตเจฟเฉฑเจ เจ
เจธเฉเจ เจฆเฉเจเจฆเฉ เจนเจพเจ เจเจฟ UNION
-เจธเจพเจกเฉ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ 3 เจนเจฟเฉฑเจธเฉ เจธเจจเฅค เจเจธ เจ
เจจเฉเจธเจพเจฐ, เจเฉฑเจ UNION
เจจเจพเจฒ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจนเฉ Append
-เจจเฉเจก, เจ
เจคเฉ เจฆเฉเจเฉ เจจเฉเฉฐ - Recursive Union
.
เจกเจพเจเจพ เจชเฉเฉเจนเฉ-เจฒเจฟเจเฉ
เจธเจญ เจเฉเจ เจฐเฉฑเจเจฟเจ เจเจฟเจ เจนเฉ, เจนเฉเจฃ เจ เจธเฉเจ เจเจพเจฃเจฆเฉ เจนเจพเจ เจเจฟ เจฌเฉเจจเจคเฉ เจฆเจพ เจเจฟเจนเฉเจพ เจนเจฟเฉฑเจธเจพ เจฏเฉเจเจจเจพ เจฆเฉ เจเจฟเจนเฉเฉ เจนเจฟเฉฑเจธเฉ เจจเจพเจฒ เจฎเฉเจฒ เจเจพเจเจฆเจพ เจนเฉเฅค เจ เจคเฉ เจเจนเจจเจพเจ เจเฉเจเฉเจฟเจเจ เจตเจฟเฉฑเจ เจ เจธเฉเจ เจเจนเจจเจพเจ เจตเจธเจคเฉเจเจ เจจเฉเฉฐ เจเจธเจพเจจเฉ เจจเจพเจฒ เจ เจคเฉ เจเฉเจฆเจฐเจคเฉ เจคเฉเจฐ 'เจคเฉ เจฒเฉฑเจญ เจธเจเจฆเฉ เจนเจพเจ เจเฉ "เจชเฉเฉเจนเจจเจฏเฉเจ" เจนเจจเฅค
เจชเฉเฉฑเจเจเจฟเฉฑเจ เจฆเฉ เจฆเฉเจฐเจฟเจธเจผเจเฉเจเฉเจฃ เจคเฉเจ, เจ
เจธเฉเจ เจจเจนเฉเจ เจเจพเจฃเจฆเฉ เจเจฟ เจเจน เจเฉฑเจ เจธเจพเจฐเจฃเฉ เจนเฉ เจเจพเจ เจเฉฑเจ CTE, เจชเจฐ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจธเฉ เจจเฉเจก เจฆเฉเจเจฐเจพ เจฎเจจเฉเจจเฉเจค เจเฉเจคเจพ เจเจฟเจ เจนเฉ RangeVar
. เจ
เจคเฉ "เจชเฉเฉเจนเจจเจฏเฉเจเจคเจพ" เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ, เจเจน เจจเฉเจกเจพเจ เจฆเจพ เจเฉฑเจ เจเจพเจซเจผเฉ เจธเฉเจฎเจค เจธเจฎเฉเจน เจตเฉ เจนเฉ:
Seq Scan on [tbl]
Bitmap Heap Scan on [tbl]
Index [Only] Scan [Backward] using [idx] on [tbl]
CTE Scan on [cte]
Insert/Update/Delete on [tbl]
เจ
เจธเฉเจ เจฏเฉเจเจจเจพ เจ
เจคเฉ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจฆเฉ เจฌเจฃเจคเจฐ เจจเฉเฉฐ เจเจพเจฃเจฆเฉ เจนเจพเจ, เจ
เจธเฉเจ เจฌเจฒเจพเจเจพเจ เจฆเฉ เจชเฉฑเจคเจฐ-เจตเจฟเจนเจพเจฐ เจจเฉเฉฐ เจเจพเจฃเจฆเฉ เจนเจพเจ, เจ
เจธเฉเจ เจตเจธเจคเฉเจเจ เจฆเฉ เจจเจพเจฎ เจเจพเจฃเจฆเฉ เจนเจพเจ - เจ
เจธเฉเจ เจเฉฑเจ-เจจเจพเจฒ-เจเฉฑเจ เจคเฉเจฒเจจเจพ เจเจฐเจฆเฉ เจนเจพเจเฅค
เจฆเฉเจฌเจพเจฐเจพ เจเฉฐเจฎ "เจเฉฑเจ เจคเจพเจฐเฉ เจจเจพเจฒ". เจ
เจธเฉเจ เจฌเฉเจจเจคเฉ เจฒเฉเจเจฆเฉ เจนเจพเจ, เจเจธเจจเฉเฉฐ เจฒเจพเจเฉ เจเจฐเจฆเฉ เจนเจพเจ, เจธเจพเจกเฉ เจเฉเจฒ เจเฉเจ เจเจชเจจเจพเจฎ เจจเจนเฉเจ เจนเฉ - เจ
เจธเฉเจ เจเจธเจจเฉเฉฐ เจเฉฑเจเฉ CTE เจคเฉเจ เจฆเฉ เจตเจพเจฐ เจชเฉเฉเจนเจฆเฉ เจนเจพเจเฅค
เจ
เจธเฉเจ เจฏเฉเจเจจเจพ เจจเฉเฉฐ เจฆเฉเจเจฆเฉ เจนเจพเจ - เจธเจฎเฉฑเจธเจฟเจ เจเฉ เจนเฉ? เจธเจพเจกเฉ เจเฉเจฒ เจเจชเจจเจพเจฎ เจเจฟเจเจ เจธเฉ? เจ
เจธเฉเจ เจเจธเจจเฉเฉฐ เจเจฐเจกเจฐ เจจเจนเฉเจ เจเฉเจคเจพเฅค เจเจธเจจเฉเฉฐ เจ
เจเจฟเจนเจพ โเจจเฉฐเจฌเจฐ เจจเฉฐเจฌเจฐโ เจเจฟเฉฑเจฅเฉเจ เจฎเจฟเจฒเจฆเจพ เจนเฉ?
PostgreSQL เจเจธเจจเฉเฉฐ เจเจชเจฃเฉ เจเจช เจเฉเฉเจฆเจพ เจนเฉเฅค เจคเฉเจนเจพเจจเฉเฉฐ เจฌเจธ เจเจธ เจจเฉเฉฐ เจธเจฎเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ เจธเจฟเจฐเจซเจผ เจ เจเจฟเจนเจพ เจเจชเจจเจพเจฎ เจธเจพเจกเฉ เจฒเจ, เจฏเฉเจเจจเจพ เจจเจพเจฒ เจคเฉเจฒเจจเจพ เจเจฐเจจ เจฆเฉ เจเจฆเฉเจธเจผเจพเจ เจฒเจ, เจเจธเจฆเจพ เจเฉเจ เจ เจฐเจฅ เจจเจนเฉเจ เจนเฉ, เจเจธเจจเฉเฉฐ เจเฉฑเจฅเฉ เจฌเจธ เจเฉเฉเจฟเจ เจเจฟเจ เจนเฉเฅค เจเจ เจเจธ เจตเฉฑเจฒ เจงเจฟเจเจจ เจจเจพ เจฆเฉเจเจ.
เจฆเฉเจเจพ เจเฉฐเจฎ "เจเฉฑเจ เจคเจพเจฐเฉ เจจเจพเจฒ": เจเฉเจเจฐ เจ
เจธเฉเจ เจเฉฑเจ เจตเจฟเจญเจพเจเจฟเจค เจเฉเจฌเจฒ เจคเฉเจ เจชเฉเฉเจน เจฐเจนเฉ เจนเจพเจ, เจคเจพเจ เจธเจพเจจเฉเฉฐ เจเฉฑเจ เจจเฉเจก เจฎเจฟเจฒเฉเจเจพ Append
เจ Merge Append
, เจเจฟเจธ เจตเจฟเฉฑเจ เจตเฉฑเจกเฉ เจเจฟเจฃเจคเฉ เจตเจฟเฉฑเจ โเจฌเฉฑเจเฉโ เจธเจผเจพเจฎเจฒ เจนเฉเจฃเจเฉ, เจ
เจคเฉ เจเจฟเจจเฉเจนเจพเจ เจตเจฟเฉฑเจเฉเจ เจนเจฐ เจเฉฑเจ เจเจฟเจธเฉ เจจเจพ เจเจฟเจธเฉ เจคเจฐเฉเจนเจพเจ เจนเฉเจตเฉเจเจพ Scan
'เจเจฎ เจเฉเจฌเจฒ-เจธเฉเจเจธเจผเจจ เจคเฉเจ: Seq Scan
, Bitmap Heap Scan
เจ Index Scan
. เจชเจฐ, เจเจฟเจธเฉ เจตเฉ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจเจน "เจฌเฉฑเจเฉ" เจเฉเฉฐเจเจฒเจฆเจพเจฐ เจธเจตเจพเจฒ เจจเจนเฉเจ เจนเฉเจฃเจเฉ - เจเจธ เจคเจฐเฉเจนเจพเจ เจเจนเจจเจพเจ เจจเฉเจกเจพเจ เจจเฉเฉฐ เจตเฉฑเจ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ Append
เจคเฉ UNION
.
เจ
เจธเฉเจ เจ
เจเจฟเจนเฉเจเจ เจเฉฐเจขเจพเจ เจจเฉเฉฐ เจตเฉ เจธเจฎเจเจฆเฉ เจนเจพเจ, เจเจนเจจเจพเจ เจจเฉเฉฐ "เจเฉฑเจ เจขเฉเจฐ เจตเจฟเฉฑเจ" เจเจเฉฑเจ เจพ เจเจฐเจฆเฉ เจนเจพเจ เจ
เจคเฉ เจเจนเจฟเฉฐเจฆเฉ เจนเจพเจ: "เจนเจฐ เจเฉเจเจผ เจเฉ เจคเฉเจธเฉเจ เจฎเฉเจเจพเจเฉเจฌเจฒ เจคเฉเจ เจชเฉเฉเจนเจฆเฉ เจนเฉ เจเจน เจเฉฑเจฅเฉ เจ
เจคเฉ เจฐเฉเฉฑเจ เจฆเฉ เจนเฉเจ เจพเจ เจนเฉ".
"เจธเจงเจพเจฐเจจ" เจกเจพเจเจพ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจตเจพเจฒเฉ เจจเฉเจก
Values Scan
เจฏเฉเจเจจเจพ เจตเจฟเฉฑเจ เจฎเฉเจฒ เจเจพเจเจฆเจพ เจนเฉ VALUES
เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ.
Result
เจฌเจฟเจจเจพ เจเฉฑเจ เจฌเฉเจจเจคเฉ เจนเฉ FROM
เจเฉเจฐเจฎเจตเจพเจฐ SELECT 1
. เจเจพเจ เจเจฆเฉเจ เจคเฉเจนเจพเจกเฉ เจเฉเจฒ เจเจพเจฃเจฌเฉเฉฑเจ เจเฉ เจเจฒเจค เจธเจฎเฉเจเจฐเจจ เจนเฉ WHERE
-เจฌเจฒเจพเจ (เจซเจฟเจฐ เจเฉเจฃ เจฆเจฟเจเจพเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉ One-Time Filter
):
EXPLAIN ANALYZE
SELECT * FROM pg_class WHERE FALSE; -- ะธะปะธ 0 = 1
Result (cost=0.00..0.00 rows=0 width=230) (actual time=0.000..0.000 rows=0 loops=1)
One-Time Filter: false
Function Scan
เจเจธเฉ เจจเจพเจฎ เจฆเฉ SRF เจฒเจ โเจจเจเจธเจผเฉโเฅค
เจชเจฐ เจจเฉเจธเจเจก เจธเจตเจพเจฒเจพเจ เจฆเฉ เจจเจพเจฒ เจธเจญ เจเฉเจ เจตเจงเฉเจฐเฉ เจเฉเฉฐเจเจฒเจฆเจพเจฐ เจนเฉ - เจฌเจฆเจเจฟเจธเจฎเจคเฉ เจจเจพเจฒ, เจเจน เจนเจฎเฉเจธเจผเจพ เจตเจฟเฉฑเจ เจจเจนเฉเจ เจฌเจฆเจฒเจฆเฉ InitPlan
/SubPlan
. เจเจ เจตเจพเจฐ เจเจน เจตเจฟเฉฑเจ เจฌเจฆเจฒเจฆเฉ เจนเจจ ... Join
เจ ... Anti Join
, เจเจพเจธ เจเจฐเจเฉ เจเจฆเฉเจ เจคเฉเจธเฉเจ เจเฉเจ เจ
เจเจฟเจนเจพ เจฒเจฟเจเจฆเฉ เจนเฉ WHERE NOT EXISTS ...
. เจ
เจคเฉ เจเฉฑเจฅเฉ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเฉเฉเจจเจพ เจนเจฎเฉเจธเจผเจพเจ เจธเฉฐเจญเจต เจจเจนเฉเจ เจนเฉเฉฐเจฆเจพ - เจฏเฉเจเจจเจพ เจฆเฉ เจชเจพเจ เจตเจฟเฉฑเจ เจฏเฉเจเจจเจพ เจฆเฉ เจจเฉเจกเจพเจ เจฆเฉ เจ
เจจเฉเจธเจพเจฐเฉ เจเฉเจ เจเจชเจฐเฉเจเจฐ เจจเจนเฉเจ เจนเจจ.
เจฆเฉเจฌเจพเจฐเจพ เจเฉฐเจฎ "เจเฉฑเจ เจคเจพเจฐเฉ เจจเจพเจฒ": เจเฉเฉฑเจ VALUES
เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ. เจเจธ เจเฉเจธ เจตเจฟเฉฑเจ เจ
เจคเฉ เจฏเฉเจเจจเจพ เจตเจฟเฉฑเจ เจคเฉเจนเจพเจจเฉเฉฐ เจเจ เจจเฉเจก เจฎเจฟเจฒเจฃเจเฉ Values Scan
.
"เจเจฟเจฃเจคเฉ" เจชเจฟเจเฉเจคเจฐ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเฉฑเจ เจฆเฉเจเฉ เจคเฉเจ เจตเฉฑเจ เจเจฐเจจ เจตเจฟเฉฑเจ เจฎเจฆเจฆ เจเจฐเจจเจเฉ - เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจธเฉ เจคเจฐเจคเฉเจฌ เจตเจฟเฉฑเจ เจเฉเฉเจฟเจ เจเจพเจเจฆเจพ เจนเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจ
เจจเฉเจธเจพเจฐเฉ เจชเจพเจ เจเจพเจเจฆเฉ เจนเจจ VALUES
- เจเฉฑเจชเจฐ เจคเฉเจ เจนเฉเจ เจพเจ เจคเฉฑเจ เจฌเฉเจจเจคเฉ เจฆเฉ เจจเจพเจฒ เจฌเจฒเจพเจ เจเจฐเจฆเจพ เจนเฉเฅค
เจกเจพเจเจพ เจชเฉเจฐเฉเจธเฉเจธเจฟเฉฐเจ
เจ
เจเจฟเจนเจพ เจฒเจเจฆเจพ เจนเฉ เจเจฟ เจธเจพเจกเฉ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจธเจญ เจเฉเจ เจธเฉเจฒเจเจพเจเจ เจเจฟเจ เจนเฉ - เจเฉ เจเฉเจ เจฌเจเจฟเจ เจนเฉ Limit
.
เจชเจฐ เจเฉฑเจฅเฉ เจธเจญ เจเฉเจ เจธเจงเจพเจฐเจจ เจนเฉ - เจเจฟเจตเฉเจ เจเจฟ เจจเฉเจก Limit
, Sort
, Aggregate
, WindowAgg
, Unique
เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจเจชเจฐเฉเจเจฐเจพเจ เจจเฉเฉฐ โเจจเจเจธเจผเจพโ เจเฉฑเจ-เจเฉฑเจ เจเจฐเจเฉ, เจเฉเจเจฐ เจเจน เจเฉฑเจฅเฉ เจนเจจเฅค เจเฉฑเจฅเฉ เจเฉเจ "เจคเจพเจฐเฉ" เจเจพเจ เจฎเฉเจธเจผเจเจฒเจพเจ เจจเจนเฉเจ เจนเจจเฅค
เจธเจผเจพเจฎเจฒ เจนเฉเจตเฉ
เจเจฆเฉเจ เจ
เจธเฉเจ เจเฉเฉเจจเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจ เจคเจพเจ เจฎเฉเจธเจผเจเจฒเจพเจ เจชเฉเจฆเจพ เจนเฉเฉฐเจฆเฉเจเจ เจนเจจ JOIN
เจเจชเจฃเฉ เจเจช เจตเจฟเฉฑเจ. เจเจน เจนเจฎเฉเจธเจผเจพ เจธเฉฐเจญเจต เจจเจนเฉเจ เจนเฉเฉฐเจฆเจพ, เจชเจฐ เจเจน เจธเฉฐเจญเจต เจนเฉ.
เจชเฉเฉฑเจเจเจฟเฉฑเจ เจชเจพเจฐเจธเจฐ เจฆเฉ เจฆเฉเจฐเจฟเจธเจผเจเฉเจเฉเจฃ เจคเฉเจ, เจธเจพเจกเฉ เจเฉเจฒ เจเฉฑเจ เจจเฉเจก เจนเฉ JoinExpr
, เจเจฟเจธ เจฆเฉ เจฌเจฟเจฒเจเฉเจฒ เจฆเฉ เจฌเฉฑเจเฉ เจนเจจ - เจเฉฑเจฌเฉ เจ
เจคเฉ เจธเฉฑเจเฉเฅค เจเจธ เจ
เจจเฉเจธเจพเจฐ, เจเจน เจเจน เจนเฉ เจเฉ เจคเฉเจนเจพเจกเฉ เจธเจผเจพเจฎเจฒ เจนเฉเจฃ เจฆเฉ "เจเฉฑเจชเจฐ" เจนเฉ เจ
เจคเฉ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ "เจนเฉเจ เจพเจ" เจเฉ เจฒเจฟเจเจฟเจ เจเจฟเจ เจนเฉเฅค
เจ
เจคเฉ เจฏเฉเจเจจเจพ เจฆเฉ เจฆเฉเจฐเจฟเจธเจผเจเฉเจเฉเจฃ เจคเฉเจ, เจเจน เจเฉเจ เจฆเฉ เจฆเฉ เจตเฉฐเจธเจผ เจนเจจ * Loop
/* Join
-เจจเฉเจก. Nested Loop
, Hash Anti Join
,... - เจเฉเฉฑเจธ เจเจธ เจคเจฐเฉเจนเจพเจ.
เจเจ เจธเจงเจพเจฐเจจ เจคเจฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเฉเจ: เจเฉเจเจฐ เจธเจพเจกเฉ เจเฉเจฒ เจเฉเจฌเจฒ A เจ
เจคเฉ B เจนเจจ เจเฉ เจฏเฉเจเจจเจพ เจตเจฟเฉฑเจ เจเฉฑเจ เจฆเฉเจเฉ เจจเฉเฉฐ "เจธเจผเจพเจฎเจฒ" เจเจฐเจฆเฉ เจนเจจ, เจคเจพเจ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจเจน เจเจพเจ เจคเจพเจ เจธเจฅเจฟเจค เจนเฉ เจธเจเจฆเฉ เจนเจจ A-JOIN-B
, เจเจพเจ B-JOIN-A
. เจเจ เจ
เจธเฉเจ เจเจธ เจคเจฐเฉเจเฉ เจจเจพเจฒ เจเฉเฉเจจ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเฉเจ, เจเจ เจฆเฉเจเฉ เจคเจฐเฉเจเฉ เจจเจพเจฒ เจเฉเฉเจจ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเฉเจ, เจ
เจคเฉ เจเจธ เจคเจฐเฉเจนเจพเจ เจเจฆเฉเจ เจคเฉฑเจ เจเจฆเฉเจ เจคเฉฑเจ เจ
เจธเฉเจ เจ
เจเจฟเจนเฉ เจเฉเฉเจฟเจเจ เจคเฉเจ เจฌเจพเจนเจฐ เจจเจนเฉเจ เจเจพเจเจฆเฉ.
เจเจฒเฉ เจเจชเจฃเจพ เจธเจฟเฉฐเจเฉเจเจธ เจเฉเจฐเฉ เจฒเฉเจเจฆเฉ เจนเจพเจ, เจธเจพเจกเฉ เจฏเฉเจเจจเจพ เจฒเฉเจเจฆเฉ เจนเจพเจ, เจเจนเจจเจพเจ เจจเฉเฉฐ เจฆเฉเจเจฆเฉ เจนเจพเจ... เจธเจฎเจพเจจ เจจเจนเฉเจ!
เจเจ เจเจธเจจเฉเฉฐ เจเฉเจฐเจพเจซเจพเจ เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ เจฆเฉเจฌเจพเจฐเจพ เจเจฟเฉฑเจเฉเจ - เจเจน, เจเจน เจชเจนเจฟเจฒเจพเจ เจนเฉ เจเฉเจ เจตเจฐเจเจพ เจฆเจฟเจเจพเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉ!
เจเจฒเฉ เจจเฉเจ เจเจฐเฉเจ เจเจฟ เจธเจพเจกเฉ เจเฉเจฒ เจจเฉเจก เจนเจจ เจเจฟเจจเฉเจนเจพเจ เจตเจฟเฉฑเจ เจเฉฑเจเฉ เจธเจฎเฉเจ B เจ
เจคเฉ C เจฌเฉฑเจเฉ เจนเจจ - เจธเจพเจจเฉเฉฐ เจเจธ เจเฉฑเจฒ เจฆเฉ เจชเจฐเจตเจพเจน เจจเจนเฉเจ เจนเฉ เจเจฟ เจเจฟเจธ เจเฉเจฐเจฎ เจตเจฟเฉฑเจเฅค เจเจ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเฉเฉเจฆเฉ เจนเจพเจ เจ
เจคเฉ เจจเฉเจก เจฆเฉ เจคเจธเจตเฉเจฐ เจจเฉเฉฐ เจเจฒเจเจพ เจฆเจฟเฉฐเจฆเฉ เจนเจพเจเฅค
เจเจฒเฉ เจซเจฟเจฐ เจฆเฉเจเฉเจเฅค เจนเฉเจฃ เจธเจพเจกเฉ เจเฉเจฒ เจฌเฉฑเจเฉ A เจ
เจคเฉ เจเฉเฉเจฟเจเจ (B + C) เจฆเฉ เจจเจพเจฒ เจจเฉเจก เจนเจจ - เจเจนเจจเจพเจ เจฆเฉ เจ
เจจเฉเจเฉเจฒ เจตเฉเฅค
เจฌเจนเฉเจค เจตเจงเฉเจ! เจเจน เจชเจคเจพ เจเจฒเจฆเจพ เจนเฉ เจเจฟ เจ
เจธเฉเจ เจเจน เจฆเฉ เจนเจพเจ JOIN
เจฌเฉเจจเจคเฉ เจคเฉเจ เจฏเฉเจเจจเจพ เจจเฉเจกเจธ เจจเฉเฉฐ เจธเจซเจฒเจคเจพเจชเฉเจฐเจตเจ เจเฉเฉเจฟเจ เจเจฟเจ เจธเฉเฅค
เจนเจพเจ, เจเจธ เจธเจฎเฉฑเจธเจฟเจ เจฆเจพ เจนเจฎเฉเจธเจผเจพ เจนเฉฑเจฒ เจจเจนเฉเจ เจนเฉเฉฐเจฆเจพเฅค
เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจเฉเจเจฐ เจเฉฑเจ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ A JOIN B JOIN C
, เจ
เจคเฉ เจฏเฉเจเจจเจพ เจตเจฟเฉฑเจ, เจธเจญ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, "เจฌเจพเจนเจฐเฉ" เจจเฉเจก A เจ
เจคเฉ C เจเจจเฉเจเจ เจเฉเจคเฉ เจเจ เจธเจจเฅค เจชเจฐ เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจ
เจเจฟเจนเจพ เจเฉเจ เจเจชเจฐเฉเจเจฐ เจจเจนเฉเจ เจนเฉ, เจธเจพเจกเฉ เจเฉเจฒ เจนเจพเจเจฒเจพเจเจ เจเจฐเจจ เจฒเจ เจเฉเจ เจจเจนเฉเจ เจนเฉ, เจเฉเจ เจธเฉฐเจเฉเจค เจเฉเฉเจจ เจฒเจ เจเฉเจ เจจเจนเฉเจ เจนเฉเฅค เจเจฆเฉเจ เจคเฉเจธเฉเจ เจฒเจฟเจเจฆเฉ เจนเฉ เจคเจพเจ "เจเจพเจฎเจพ" เจจเจพเจฒ เจตเฉ เจเจนเฉ เจนเฉเฉฐเจฆเจพ เจนเฉ A, B
.
เจชเจฐ, เจเจผเจฟเจเจฆเจพเจคเจฐ เจฎเจพเจฎเจฒเจฟเจเจ เจตเจฟเฉฑเจ, เจฒเจเจญเจ เจธเจพเจฐเฉ เจจเฉเจกเจธ "เจเฉเฉฑเจฒเฉเจนเฉ" เจนเฉ เจธเจเจฆเฉ เจนเจจ เจ
เจคเฉ เจคเฉเจธเฉเจ เจธเจฎเฉเจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจฌเฉ เจชเจพเจธเฉ เจเจธ เจเจฟเจธเจฎ เจฆเฉ เจชเฉเจฐเฉเจซเจพเจเจฒเจฟเฉฐเจ เจชเฉเจฐเจพเจชเจค เจเจฐ เจธเจเจฆเฉ เจนเฉ - เจธเจผเจพเจฌเจฆเจฟเจ, เจเจฟเจตเฉเจ เจเจฟ เจเฉเจเจฒ เจเจฐเฉเจฎ เจตเจฟเฉฑเจ เจเจฆเฉเจ เจคเฉเจธเฉเจ เจเจพเจตเจพเจธเจเฉเจฐเจฟเจชเจ เจเฉเจก เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจฆเฉ เจนเฉเฅค เจคเฉเจธเฉเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ เจเจฟ เจนเจฐเฉเจ เจฒเจพเจเจจ เจ
เจคเฉ เจนเจฐเฉเจ เจธเจเฉเจเจฎเฉเจเจ เจจเฉเฉฐ "เจเจเจเจผเฉเจเจฟเจเจ" เจเจฐเจจ เจตเจฟเฉฑเจ เจเจฟเฉฐเจจเจพ เจธเจฎเจพเจ เจฒเฉฑเจเจพเฅค
เจ
เจคเฉ เจคเฉเจนเจพเจกเฉ เจฒเจ เจเจธ เจธเจญ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเจพ เจตเจงเฉเจฐเฉ เจธเฉเจตเจฟเจงเจพเจเจจเจ เจฌเจฃเจพเจเจฃ เจฒเจ, เจ
เจธเฉเจ เจธเจเฉเจฐเฉเจ เจฌเจฃเจพเจ เจนเฉ
เจเฉเจเจฐ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจฟเจฐเจซเจผ เจเฉฑเจ เจจเจพ-เจชเฉเฉเจนเจจเจฏเฉเจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจจเฉเฉฐ เจขเฉเจเจตเฉเจ เจฐเฉเจช เจตเจฟเฉฑเจ เจฒเจฟเจเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ, เจคเจพเจ เจตเจฐเจคเฉเจ เจเจฐเฉ
เจธเจฐเฉเจค: www.habr.com