"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 ? -- Хорсун Влад