"sasha" ...

> Запрос Б, делает какой-то странный по-моему план. При этом
> осуществляется полный перебор по таблице "TaggedObjects".
>
>
> SELECT TOB.*
> FROM CONVERT_IDS_TO_ROWS('54319218, 54319223') R
> JOIN (
>    SELECT O."Id", O."ObjectId", O."TagName", T."Permanent", T."MatchesCount"
>      FROM "TaggedObjects" O
>      LEFT JOIN "Tags" T ON T."Id" = O."TagId"
>      WHERE O."ObjectName" = 'FeedItem'
>    ) TOB ON TOB."ObjectId" = R.ID
>
>
> PLAN MERGE (SORT (JOIN (TOB O NATURAL, TOB T INDEX (PK_Tags))), SORT
> (CONVERT_IDS_TO_ROWS NATURAL))

    Похоже он это рассматривает как

("TaggedObjects" O LEFT JOIN "Tags" T) JOIN CONVERT_IDS_TO_ROWS

вместо

CONVERT_IDS_TO_ROWS JOIN ("TaggedObjects" O LEFT JOIN "Tags" T)

    А как работает

 SELECT TOB.*
 FROM CONVERT_IDS_TO_ROWS('54319218, 54319223') R
 LEFT JOIN (
    SELECT O."Id", O."ObjectId", O."TagName", T."Permanent", T."MatchesCount"
      FROM "TaggedObjects" O
      LEFT JOIN "Tags" T ON T."Id" = O."TagId"
      WHERE O."ObjectName" = 'FeedItem'
    ) TOB ON TOB."ObjectId" = R.ID

?

-- 
Хорсун Влад


Reply via email to