недавно у меня возникла проблема с моей хранимой процедурой, она работала слишком медленно, поэтому один из моих коллег предложил перекрестное применение, он сказал, что перекрестное применение работает как внутреннее соединение, но без необходимости использования комманд-ключа между таблицей.
у меня в сенарио три таблицы crossarticle_article
, crossarticle_articletocategory
и crossarticle_article
. Теперь я хочу получить все записи, у которых categoryid
равно 4, categoryid
хранятся в crossarticle_articletocategory
* 1009.*
насколько я понял, я создал для него запрос ниже:
SELECT *
FROM crossarticle_article c
CROSS APPLY
crossarticle_articletocategory cc1
CROSS APPLY
crossarticle_category cc2
WHERE cc2.id = 1
этот запрос должен возвращать только записи из crossarticle_article
, где идентификатор категории соответствует 1, но он возвращает все записи из всех 3 таблиц.
, где я иду не так, если это не способ использования перекрестного применения, то как его использовать, и в чем его преимущество.
в том, что перекрестное применение работает с теми же таблицами... если так, то чем может быть сценарий ...