แแแกแฃแ แแแแแแแแ แจแ แแแแแฆแ แกแแแแขแแ แแกแ แฎแแ แแแแแก แแแแแ แแจแ VWO แแฎแแ แแแญแแ แแก แแฃแแแแกแแแ. แแแแ แแแ แแแ แแขแแฃแแ แแแแแแขแแกแแแแก แแ แ-แแ แแ แแแแแแขแแแฃแ แ แแแแแ แแจแแก แฉแแขแแแ แแแแก แแ แ แแแ แซแแแฃแแ แฉแแแแ. แแ แ แแแแแ แแก แแ แแก แฉแแแ แแแกแฃแฎแแกแแแแแแแแแก แกแคแแ แ, แแแจแแแแ แงแฃแ แแแฆแแแ แแแแแแแฎแแแแ แแ แแแแแแแก แแแแแญแ แแแ.
แฌแแแแแกแขแแ แแ
แแแแก แแแกแแแแแแ, แ แแแแช แแกแแฃแแ แแ, แชแแขแแก แแแแแงแแแแแ VWO-แแ. แแก แแ แแก แแแแขแคแแ แแ, แ แแแแแแแช แจแแแแซแแแแ แแแแฌแงแแ แกแฎแแแแแกแฎแแ แแแแแแแ แแแ แแแแแแแแแแ แแฅแแแแก แแแแกแแแขแแแแ: แฉแแแขแแ แแ A/B แแฅแกแแแ แแแแแขแแแ, แแแแแงแฃแ แ แแแแแแแ แแแแแขแแ แแแก แแ แแแแแแ แขแแชแแแแก, แแแแแแแแแแแ แแแงแแแแแแแก แซแแแ แแแ, แแฉแแแแแ แกแแแแแก แ แฃแฅแแแ แแ แแแฃแแ แแ แแแแแขแแแแก แฉแแแแฌแแ แแแ.
แแแแ แแ แงแแแแแแ แแแแจแแแแแแแแแ แ แแ แแแแขแคแแ แแแแ แแ แแก แแแฎแกแแแแแ. แงแแแแ แแแแแ แฉแแแแแแแแแ แคแฃแแฅแชแแ แฃแ แแแแ แแแแแแแจแแ แแแฃแแแ. แแแ แแแ แแขแแฃแแ แแแแแแขแแแแกแแแแก แแ, แฃแแแ แแแแแ แ แแแคแแ แแแชแแ แฃแแ แแแแ แแแแแฃแกแแแแแแ แ แแฅแแแแแแ แซแแแแ แ แแแแขแคแแ แแแก แแแ แแจแ, แ แแแแแแช แแแก แแแแแแขแแแแก แกแแฎแแ แฌแแ แแแแฉแแแก.
แแแแขแคแแ แแแก แแแแแงแแแแแแ, แจแแแแซแแแแ แแแแแแแแ แจแแแแฎแแแแแแ แแแแฎแแแแ แแแแแชแแแแ แแแ แแแแ แแแแ. แแ แแแ แขแแแ แแแแแแแแ:
แงแแแแ แแแฌแแแแฃแแแแแก แฉแแแแแแ แแแแ แแแ "abc.com" FROM <date d1> to <date d2>> แแแแแแแแแแแกแแแแก, แแแแช แแงแแแแแแ Chrome OR-แก (แแแแแแ แแแแก แแแ แแแแจแ แแ แแงแแแแแแ iPhone-แก)
แงแฃแ แแแฆแแแ แแแแฅแชแแแ แแฃแแแก แแแแ แแขแแ แแแก. แแกแแแ แฎแแแแแกแแฌแแแแแแ แแแแแแขแแแแกแแแแก แจแแแแแฎแแแก แแแขแแ แคแแแกแจแ, แ แแแ แแแแแฎแแ แชแแแแแ แแแแแแแแฃแ แแ แ แแฃแแ แแแแฎแแแแแแ แแแแฃแจแแแแก แแแกแแฆแแแแ.
แแแแ แแแแฎแแแแ
แแแชแแแฃแแ แแแแแแขแ แชแแแแแแแ แแแแแแแแแแแ แแกแแแ แ แแ, แ แแช แแแขแฃแแชแแฃแ แแ แกแฌแ แแคแแ แฃแแแ แแฃแจแแแแแแก:
แกแแกแแแก แงแแแแ แฉแแแแฌแแ แแก แฉแแแแแแ แแแแฎแแแ แแแแแแแกแแแแก, แ แแแแแแแช แแฌแแแแแแ แแแแแกแแแแ แแแแ แแก URL-แแ, แ แแแแแแช แจแแแชแแแก "/jobs"
แแ แกแแแขแก แฐแฅแแแแ แขแแแ แขแ แแคแแแ แแ แฉแแแ แแแแแฎแแแแแ แแแแแแแแ แแแข แฃแแแแแแฃแ URL-แก แแฎแแแแ แแแแกแแแแก. แแ แแแ แกแฃแ แแแ แแแแแแ แกแแแแแแ แแแ แขแแแ URL-แแก แจแแแแแแ, แ แแแแแแช แแแแแแจแแ แแแฃแแแ แแแ แแแแแแก แแแแแแแแ.
แฌแแแแกแฌแแ แ แแแแแซแแแแ
แแแแแ แจแแแฎแแแแ แ แ แฎแแแแ แแแแแชแแแแ แแแแแจแ. แฅแแแแแ แแแชแแแฃแแแ แแ แแแแแแแฃแ แ แแแแ SQL แแแแฎแแแแ:
SELECT
count(*)
FROM
acc_{account_id}.urls as recordings_urls,
acc_{account_id}.recording_data as recording_data,
acc_{account_id}.sessions as sessions
WHERE
recording_data.usp_id = sessions.usp_id
AND sessions.referrer_id = recordings_urls.id
AND ( urls && array(select id from acc_{account_id}.urls where url ILIKE '%enterprise_customer.com/jobs%')::text[] )
AND r_time > to_timestamp(1542585600)
AND r_time < to_timestamp(1545177599)
AND recording_data.duration >=5
AND recording_data.num_of_pages > 0 ;
แแ แแฅ แแ แแก แแ แ:
แแแแแแแแแ แแ แ: 1.480 ms แจแแกแ แฃแแแแแก แแ แ: 1431924.650 ms
แแแแฎแแแแแ แแแแชแแ 150 แแแแกแ แกแขแ แแฅแแแ. แจแแแแแฎแแแก แแแแแแแแแแแ แแฉแแแแ แ แแแแแแแแ แกแแแแขแแ แแกแ แแแขแแแ, แแแแ แแ แแจแแแ แ แจแแคแแ แฎแแแแแแก แแแ แแจแ.
แแแแแ, แฃแคแ แ แแแขแแแฃแ แแ แจแแแแกแฌแแแแแ แแแแฎแแแแ. แ แแแแ แช แฎแแแแแ, แแก แแแแแแแก JOIN
แกแแแ แแแแแแ:
- แกแฎแแแแแแ: แกแแกแแแก แแแคแแ แแแชแแแก แฉแแแแแแ: แแ แแฃแแแ แ, แแแแฎแแแ แแแแแก แแแแแขแ, แฅแแแงแแแ แแ แ.แจ.
- แฉแแแแฌแแ แแก_แแแแแชแแแแแ: แฉแแฌแแ แแแ URL-แแแ, แแแแ แแแแ, แแแแแขแแแแก แฎแแแแ แซแแแแแแ
- แแแกแแแแ แแแแ: แฃแแแแฃแ แแกแแ แแแแ URL-แแแแก แแฃแแแแ แแแแก แแแแแแแ แแกแแชแแแแแแแ, แฉแแแ แแแ แชแแแแ แชแฎแ แแแจแ แแแแแฎแแแ.
แแกแแแ แแแแแแแแแกแฌแแแแ, แ แแ แฉแแแแ แงแแแแ แชแฎแ แแแ แฃแแแ แแแงแแคแแแแ account_id
. แแ แแแแ, แแแแแ แแชแฎแฃแแแ แกแแขแฃแแชแแ, แ แแแแกแแช แแ แแ แแแแกแแแฃแแ แแแแ แแแแ แแแแแ แแจแ แกแฎแแแแก แแ แแแแแแแแก แฃแฅแแแแก.
แแซแแแก แแแแแจแแแแแแก
แฃแคแ แ แแญแแแ แ แจแแแแฌแแแแแก แจแแแแแ, แฉแแแ แแฎแแแแแ, แ แแ แ แแฆแแช แแ แแกแฌแแ แแ แแแแแ แแขแฃแ แแแแฎแแแแแกแแแ แแแแแแจแแ แแแแ. แฆแแ แก แแ แกแขแ แแฅแแแแก แฃแคแ แ แแแขแแแฃแ แแ แแแแแแแแแ แแแ:
urls && array(
select id from acc_{account_id}.urls
where url ILIKE '%enterprise_customer.com/jobs%'
)::text[]
แแแ แแแแ แแแ แ แแงแ, แ แแ แแแแแ แแแแขแแ ILIKE
แงแแแแ แแ แแ แซแแ URL-แแ (แฉแแแ แแแแฅแแก 1,4 แแแแแแแแ แแแขแ แฃแแแแแแฃแ แ แแ แแแแแ แแจแแกแแแแก แจแแแ แแแแแฃแแ URL-แแแ) แจแแแซแแแแ แแแแแ แแแแแก.
แแแแ แแ แแ แ, แแก แแ แแ แแก แแแแแแ แ!
SELECT id FROM urls WHERE url ILIKE '%enterprise_customer.com/jobs%';
id
--------
...
(198661 rows)
Time: 5231.765 ms
แจแแแแแแแก แซแแแแแก แแแแฎแแแแแก แแฎแแแแ 5 แฌแแแ แกแญแแ แแแแ. แจแแแแแแแก แซแแแแ แแแแแแ แฃแแแแแแฃแ URL-แจแ แแจแแแ แแ แแ แแ แแก แแ แแแแแแ.
แกแแแจแ แจแแแแแแ แแญแแแแขแแแแแ แ แแแแแแแแแ JOIN
. แแฅแแแ แแแแแ แแแแแแแขแแแฃแแแ แแแแแงแแแแแแ แแแแแแฌแแแ แจแแแแแแแ? แฉแแแฃแแแแ แแ JOIN
แแก แแ แแก แจแแกแ แฃแแแแแก แแ แแแแแแแแแก แงแแแแแแ แแจแแแ แ แแแแแแแแขแแแ, แแแแ แแ แแ แแ แแฏแแ แแแ, แ แแ แฉแแแแ แจแแแแฎแแแแ แแงแ แขแแแแฃแ แ.
analytics_db=# SELECT
count(*)
FROM
acc_{account_id}.urls as recordings_urls,
acc_{account_id}.recording_data_0 as recording_data,
acc_{account_id}.sessions_0 as sessions
WHERE
recording_data.usp_id = sessions.usp_id
AND sessions.referrer_id = recordings_urls.id
AND r_time > to_timestamp(1542585600)
AND r_time < to_timestamp(1545177599)
AND recording_data.duration >=5
AND recording_data.num_of_pages > 0 ;
count
-------
8086
(1 row)
Time: 147.851 ms
แแ แแก แแกแแแ แแ แแงแ แฉแแแแ แกแแฅแแ. JOIN
แกแแแแแแ แกแฌแ แแคแ แแฆแแแฉแแแ.
แแญแแแแขแแแแแแ แฌแ แแก แแแฌแ แแแแแ
แแแแ แแแงแแแ แแแแแฌแงแ แแแแฎแแแแแก แจแแชแแแ, แ แแแ แแแแแฆแฌแแ แจแแกแ แฃแแแแแก แจแแกแแซแแ แแแฃแแฏแแแแกแแแแก. แแ แแ แฉแแแแ แแฃแแแแ แแแแแแแแแแ แแ 2 แซแแ แแแแแ แแแแ:
- แแแแแแงแแแแ EXISTS แฅแแแแแแฎแแแแแก URL-แแกแแแแก: แฉแแแ แแแแแแแแ แแแแแ แแ แแฎแแ แแแแแแแแแแฌแแแแแแ, แแงแ แแฃ แแ แ แ แแแแ แแ แแแแแแ URL-แแแแก แฅแแแแแแฎแแแแแกแแแ แแแแแแจแแ แแแแ. แแแแก แแแฆแฌแแแแก แแ แ-แแ แแ แแแ แฃแแ แแแแ แแแแแงแแแแแแ
EXISTS
.EXISTS
แจแแฃแซแแแ แแแแจแแแแแแแแแ แแแแฃแแฏแแแแกแแแก แจแแกแ แฃแแแแแก, แ แแแแแ แแก แแแจแแแแ แแแแแ แแแแ, แ แแแแ แช แแ แแแแแแก แแ แแแแแ แ แกแขแ แแฅแแแก, แ แแแแแแช แแแแฎแแแแ แแแแแแแ แแแแแก.
SELECT
count(*)
FROM
acc_{account_id}.urls as recordings_urls,
acc_{account_id}.recording_data as recording_data,
acc_{account_id}.sessions as sessions
WHERE
recording_data.usp_id = sessions.usp_id
AND ( 1 = 1 )
AND sessions.referrer_id = recordings_urls.id
AND (exists(select id from acc_{account_id}.urls where url ILIKE '%enterprise_customer.com/jobs%'))
AND r_time > to_timestamp(1547585600)
AND r_time < to_timestamp(1549177599)
AND recording_data.duration >=5
AND recording_data.num_of_pages > 0 ;
count
32519
(1 row)
Time: 1636.637 ms
แฒแแ แแ, แแแแฎ. แฅแแแแแแฎแแแแ, แ แแแแกแแช แจแแคแฃแแฃแแแ EXISTS
, แงแแแแแคแแ แก แซแแแแแ แกแฌแ แแคแแ แแแแแแแก. แจแแแแแแ แแแแแแฃแ แ แแแแฎแแแ, แ แแขแแ แแ แแก แแแแฎแแแแ JOIN
-แแแ แแ แแแแแ แกแฃแแแแแ แ แชแแ-แชแแแแ แกแฌแ แแคแแ, แแแแ แแ แแ แแแ แกแแจแแแแแ แแแแแ?
- แฅแแแแแแฎแแแแแก แแแแแขแแแ CTE-แแ : แแฃ แแแแฎแแแแ แแแแแกแแแแแ แกแฌแ แแคแแ, แฉแแแ แจแแแแแซแแแ แฃแแ แแแแ แแแแแแแแแแแ แกแฌแ แแคแ แจแแแแแ แฏแแ แแ แจแแแแแ แแแแแฌแแแแ แแก แแแแแแ แแแแฎแแแแแก
WITH matching_urls AS (
select id::text from acc_{account_id}.urls where url ILIKE '%enterprise_customer.com/jobs%'
)
SELECT
count(*) FROM acc_{account_id}.urls as recordings_urls,
acc_{account_id}.recording_data as recording_data,
acc_{account_id}.sessions as sessions,
matching_urls
WHERE
recording_data.usp_id = sessions.usp_id
AND ( 1 = 1 )
AND sessions.referrer_id = recordings_urls.id
AND (urls && array(SELECT id from matching_urls)::text[])
AND r_time > to_timestamp(1542585600)
AND r_time < to_timestamp(1545107599)
AND recording_data.duration >=5
AND recording_data.num_of_pages > 0;
แแแแ แแ แแแแแช แซแแแแแ แแแแ แแงแ.
แแแแแแจแแแแก แแแแแ
แแแแแ แแ แฎแแแก แแแแแแแแแแแจแ แฉแแแก แแแแแฌแแ แแ แแ แฌแแ แแแแแแ แแแขแ แแแแแแแ, แ แแแแแกแแช แแแแฃแแแแแแ แแแแแ แแแแแ แชแฎแแแแ. แแแแ แแ แ แแแแแ แกแฎแแ แแฆแแ แแคแแ แ แแแแ แฉแ, แแแแแแฌแงแแแขแ แแแช แแแแแฎแแแ. แแ แแแแแแ แแแแ &&
แแแแ แแขแแ แ. แฒแแฎแแแแแแก EXISTS
แฃแแ แแแแ แแแฃแแฏแแแแกแแแฃแแ แจแแกแ แฃแแแแ &&
แแงแ แแ แแแแแ แแ แแแ แฉแแแแแ แกแแแ แแ แคแแฅแขแแ แ แแแแ แจแแแแแฎแแแก แงแแแแ แแแ แกแแแจแ.
แฒงแฃแ แแแ &&
แแแแแแงแแแแแ แแแจแแ, แ แแแแกแแช แแญแแ แแแแแ แกแแแ แแ แแแแแแแขแแแแก แแแแแ แแ แแแกแแแก แจแแ แแก.
แแแแแแแแ แแแ แแแแฎแแแแแจแ แแก แแ แแก:
AND ( urls && array(select id from acc_{account_id}.urls where url ILIKE '%enterprise_customer.com/jobs%')::text[] )
แ แแช แแแจแแแแก, แ แแ แฉแแแ แแแแแแแแ แจแแแแแแแก แซแแแแแก แฉแแแแก URL-แแแแ, แจแแแแแ แแแแฃแแแแ แแแแแแก แงแแแแ URL-แแแ แกแแแ แแ แแแกแขแแแแ. แแก แชแแขแ แแแแแแแแแแแแ, แ แแแแแ "urls" แแฅ แแ แแฎแแแ แชแฎแ แแแก, แ แแแแแแช แจแแแชแแแก แงแแแแ URL-แก, แแ แแแแ แชแฎแ แแแแก "urls" แกแแแขแก. recording_data
.
แแแแ แแ แแญแแแแแ &&
, แจแแแแชแแแ แแแแแแ แแแแแกแขแฃแ แแแ แแแแแแแก แจแแแแแฎแแแก แแแแแ แแ แแแฃแ แแแแแแจแ EXPLAIN ANALYZE
(แแ แฃแแแ แแฅแแแแ แจแแแแฎแฃแแ แแแแแ, แแแแ แแ, แ แแแแ แช แฌแแกแ, แฃแคแ แ แแแแคแแ แขแฃแแแ แแแขแแ แแ แแฅแกแแแ แแแแแขแแแก SQL-แจแ, แแแแ แ แแชแแแแแ แแแแแแ แจแแแแแฎแแแก แแแแแแแแแแแแแก แแแแญแแแ แแแแแแ).
Filter: ((urls && ($0)::text[]) AND (r_time > '2018-12-17 12:17:23+00'::timestamp with time zone) AND (r_time < '2018-12-18 23:59:59+00'::timestamp with time zone) AND (duration >= '5'::double precision) AND (num_of_pages > 0))
Rows Removed by Filter: 52710
แแฎแแแแ แคแแแขแ แแแแก แ แแแแแแแแ แฎแแแ แแงแ &&
. แ แแช แแแแก แแแจแแแแแ, แ แแ แแก แแแแ แแชแแ แแ แ แแฎแแแแ แซแแแ แ แฆแแ แแ, แแ แแแแ แ แแแแแแฏแแ แแ แแแแแแแ.
แแ แแแแแแชแแแ แแก แแแแแแแ แแแแแก แแแแแแ แแแแ
SELECT 1
FROM
acc_{account_id}.urls as recordings_urls,
acc_{account_id}.recording_data_30 as recording_data_30,
acc_{account_id}.sessions_30 as sessions_30
WHERE
urls && array(select id from acc_{account_id}.urls where url ILIKE '%enterprise_customer.com/jobs%')::text[]
แแก แจแแแแแฎแแ แแแแ แแงแ. แฒแแแขแแ แ แแ JOIN
-s แแ แแก แกแฌแ แแคแ แแ subqueries แกแฌแ แแคแ, แแ แแแแแ แแ แ แแช แแแ แฉแ แแงแ &&
แแแแ แแขแแ แ.
แแก แแฎแแแแ แกแแแแแแซแ แแแแ แแชแแแ. แฉแแแ แงแแแแแแแแก แแแญแแ แแแแ แแแซแแแแแ URL-แแแแก แแแแแ แชแฎแ แแแ, แ แแแ แแแซแแแแแ แแแแฃแจแ แแ แงแแแแแแแแก แแแญแแ แแแแ แแแแแแแแก แแแแแ. แฉแแแ แแ แจแแแแแซแแแ แฃแจแฃแแแแ URL แฉแแแแฌแแ แแแแก แแแฎแแแแแ แแแซแแแแ, แ แแแแแ แแก แแฎแแแแ ID-แแแแ urls
.
แแแแแกแแแแแก แแแแแ
&&
แแแแ, แ แแแแแ แแ แแแ แแแแ แแแ แฃแแแ แแแแแ แแ. แแแแ แแชแแ แจแแแแ แแแแ แกแฌแ แแคแ แแฅแแแแ แแฃ แจแแแชแแแ urls
on { "http://google.com/", "http://wingify.com/" }
.
แแแแแฌแงแ แแแกแขแแ แแกแจแ แแแแแแแแฃแแ แแแแแแก แแแแแแแแแก แแแแแแก แซแแแแ แแแแแงแแแแแแก แแแ แแจแ &&
, แแแแ แแ แแแแ แฌแแ แแแขแแแแก แแแ แแจแ.
แกแแแแแแ แฏแแแจแ, แฉแแแ แแแแแแฌแงแแแขแแ แแ แแแแแแแก แแแแแแ แแแ แแแแแแ แแแฃแแแ: แแแแแชแ แงแแแแแคแแ แ urls
แฎแแแแแ, แ แแแแแแ URL แแแแฎแแแแ แแแแฃแจแก. แแแแแขแแแแแ แแแ แแแแแแก แแแ แแจแ แแฅแแแแ -
SELECT urls.url
FROM
acc_{account_id}.urls as urls,
(SELECT unnest(recording_data.urls) AS id) AS unrolled_urls
WHERE
urls.id = unrolled_urls.id AND
urls.url ILIKE '%jobs%'
แแแชแแแแ JOIN
แกแแแขแแฅแกแ แฃแแ แแแแ แแแแแแแงแแแ แฅแแแแแแฎแแแแ แแ แแแแแคแแ แแแแ recording_data.urls
แแแกแแแ แแกแ, แ แแ แแฅแแแ แจแแแแซแแแแ แแแ แแแแแ แแแแแแงแแแแ แแแ แแแ WHERE
.
แแฅ แงแแแแแแ แแแแแแ แ แแก แแ แแก &&
แแแแแแงแแแแแ แแแแก แจแแกแแแแฌแแแแแแ, แจแแแชแแแก แแฃ แแ แ แแแชแแแฃแแ แฉแแแแฌแแ แ แจแแกแแแแแแก URL-แก. แแฃ แชแแขแแก แแแแแ แฉแแฎแฃแญแแแ, แฎแแแแแ, แ แแ แแก แแแแ แแชแแ แแแซแ แแแแก แแแกแแแแก (แแ แชแฎแ แแแแก แ แแแแแแก) แแแแแแแขแแแจแ แแ แฉแแ แแแแ, แ แแแแกแแช แแแ แแแ (แจแแกแแแแแแกแ) แแแแแแงแแคแแแแแฃแแแ. แแ แแคแแ แก แแ แแแฎแกแแแแแก? แฐแ, EXISTS
.
แแแก แจแแแแแ recording_data.urls
แจแแแซแแแแ แแแแแแแแ แฅแแแแแแฎแแแแแก แแแแขแแฅแกแขแแก แแแ แแแแ, แ แแแแกแแช แแก แแแฎแแแแ, แฉแแแ แจแแแแแซแแแ แแแแฃแแ แฃแแแแ แฉแแแแก แซแแแ แแแแแแแ แก EXISTS
แแ แจแแคแฃแแแ แฅแแแแแซแแแแ แแแกแแแ.
แงแแแแแคแ แแก แแ แแแ แจแแแ แแแแ, แแแแแฆแแแ แกแแแแแแ แแแขแแแแแแแฃแ แจแแแแแฎแแแก:
SELECT
count(*)
FROM
acc_{account_id}.urls as recordings_urls,
acc_{account_id}.recording_data as recording_data,
acc_{account_id}.sessions as sessions
WHERE
recording_data.usp_id = sessions.usp_id
AND ( 1 = 1 )
AND sessions.referrer_id = recordings_urls.id
AND r_time > to_timestamp(1542585600)
AND r_time < to_timestamp(1545177599)
AND recording_data.duration >=5
AND recording_data.num_of_pages > 0
AND EXISTS(
SELECT urls.url
FROM
acc_{account_id}.urls as urls,
(SELECT unnest(urls) AS rec_url_id FROM acc_{account_id}.recording_data)
AS unrolled_urls
WHERE
urls.id = unrolled_urls.rec_url_id AND
urls.url ILIKE '%enterprise_customer.com/jobs%'
);
แแ แกแแแแแแ แขแงแแแแก แแ แ Time: 1898.717 ms
แแฆแแแจแแแแก แแ แแ?!?
แแ แช แแกแ แกแฌแ แแคแแ! แฏแแ แฃแแแ แจแแแแแฌแแแ แกแแกแฌแแ แ. แซแแแแแ แแญแแ แแแแแ แแแแแ EXISTS
แแแขแแแแแแชแแ, แ แแแแแ แแก แชแแแแก แแแแแแแก แแแ แ แจแแฌแงแแแขแแกแแแแก. แฉแแแ แฃแแแ แแแแ แฌแแฃแแแแ, แ แแ แแแแฎแแแแแก แแ แแแแแแแขแแ แแ แ แแจแแแ แ แจแแชแแแแ.
แแแ แขแแแ แแแแแชแแ แแงแ แแแกแแจแแแแ count(*)
แ แแแแ แช แแแ, แแกแแแ แกแฌแ แแค แจแแแแแฎแแแแแ แกแฎแแแแแกแฎแแ แแแแแชแแแแ แแแแ แแแแก แแแแ แ แแแแแแแแแ. แจแแแแแ, แแแแแชแแแแ แแชแแ แ แฅแแแฏแแฃแคแแกแแแแก, แแ แฎแแแแ แแแแแแแกแขแฃแ แ, แ แแ แงแแแแ แจแแแแแ แแงแ แกแฌแแ แ.
แงแแแแ แจแแแแฌแแแแแ แแแแแแแแแแ แฃแแแ แแแแแแแแ แจแแแแแ แแแแแแฆแ. แงแแแแแคแแ แ แแแแแแแแ แแ!
แแแกแฌแแแแ แแแแแแแแแแแ
แแ แแกแขแแ แแแแแ แแแแ แ แแแแแแแแแ แจแแแซแแแแ แแแกแฌแแแแแ:
- แจแแแแแฎแแแก แแแแแแแ แแ แแแแแแแฎแ แแแก แแแแ แแแแแแก, แแแแ แแ แแแ แจแแฃแซแแแแ แแแแฌแแแแ แแแคแแ แแแชแแ
- แแแแแแ แ แแญแแแแขแแแแแแแ แงแแแแแแแแก แแ แแ แแแ แแแแแแแแ แแแแแแจแแแแแแ
- แแแแ แแแแฎแแแแแแ แจแแแซแแแแ แแแแจแแแแก, แ แแแ แแแแแแงแแ แแแกแขแแแฃแแแแ
- แงแแแแ แแแขแแแแแแชแแ แแ แแ แแก แ แแแฃแฅแชแแฃแ แ แฎแแกแแแแแก
- แแแแแแงแแแแ
EXIST
, แกแแแแช แแก แจแแกแแซแแแแแแแ, แจแแแซแแแแ แแแแแแฌแแแแก แแ แแแฃแฅแขแแฃแแแแแก แแแแแแ แ แแ แแ
แแแแแงแแแแแก
แฉแแแ แแแแแแแแแ แจแแแแแฎแแแก แแ แแแแแ ~24 แฌแฃแแแแแ 2 แฌแแแแแแ - แจแแกแ แฃแแแแแก แกแแแแแแ แแแแจแแแแแแแแแ แแ แแ! แแแฃแฎแแแแแแ แแแแกแ, แ แแ แแก แกแขแแขแแ แแแแ แแแแแแแแ, แงแแแแ แแฅแกแแแ แแแแแขแ, แ แแแแแแช แฉแแแ แแแแแแแแแ, แฉแแขแแ แแ แแ แ แแฆแแจแ แแ แจแแคแแกแแ, แ แแ แแแขแแแแแแชแแแกแ แแ แขแแกแขแแ แแแแกแแแแก แแแ 1,5-แแแ 2 แกแแแแแแแ แแแกแญแแ แแแ.
SQL แแจแแแแแแ แ แแแแ, แแฃ แแแกแ แแ แแแจแแแแแ, แแแแ แแ แจแแแชแแแแ แแกแฌแแแแแ แแ แแแแแแงแแแแ แแแ. แแฃ แแแ แแแ แแแกแแแ, แแฃ แ แแแแ แกแ แฃแแแแแ SQL แแแแฎแแแแแแ, แ แแแแ แแแแแแ แแ แแแก แแแแแชแแแแ แแแแ แจแแแแแฎแแแก แแแแแแแก, แ แแแแ แแฃแจแแแแก แแแแแฅแกแแแ แแ แฃแแ แแแแ แแ แแแแแชแแแแแแก แแแแ, แ แแแแแแแแแช แแฅแแแ แแแฅแแ แกแแฅแแ, แจแแแแซแแแแ แแงแแ แซแแแแแ แฌแแ แแแขแแแฃแแ แแแแฎแแแแแแแก แแแขแแแแแแชแแแจแ. แแแแกแแแ, แแแแแแ แแ แแแแจแแแแแแแแแแ, แ แแ แแแแแแ แซแแแแ แกแฎแแแแแกแฎแแ แแแแแแแแแแก แชแแ แแ แแแ-แแแแ แแแจแแแแ แแ แแแแแแ, แแฆแแแแแฉแแแแ แแแกแขแแแฃแแแแ.
แแกแแแ แจแแแแแแแแก แแแฆแฌแแแแก แกแแฃแแแแแกแ แแแฌแแแ แแ แแก แจแแกแแแฉแแแแ, แแแแแกแแฉแแแ แกแแฉแฅแแ แแก แแแฃแแฏแแแแกแแแ - แกแแแแช แแแแแ แแจแ, แ แแแแแแช แแแ แ แแ แช แแ แแขแแแ แแแแแแ, แแฎแแ แแขแแแ แแแแ แแแแฅแแแก แแงแแกแแแ แแ.
แฒแแแกแแแฃแแ แแแฃแแ แแแแแแแ แฉแแแ แแแฎแแแแแแแ แแแแขแแ แแแจแ แแก แแแแแฃแ แแแแ, แแแแขแแ แแแฃแ แฃ ะธ
แฌแงแแ แ: www.habr.com