Симметричное перекрестное соединение

я пытаюсь извлечь всю пару сказатьi,j из каждого элемента в таблице против каждого элемента в той же таблице, вот мой запрос: I '

select a.Id L,b.id R into #cross from MyTable a cross join mytable b 

м в ситуации, когдаi,j == j,i так что нужна только половина записи. Моя наивная попытка:

select a.Id L,b.id R into #cross from MyTable a cross join mytable b 
where not exists
    (select * from #cross c where c.L=R and c.R=L)

Но я могу't запросить таблицу назначения при вставке, как сказано в SQL Server:

The SELECT INTO statement cannot have same source and destination tables

как я могу сделать это эффективно?

РЕДАКТИРОВАТЬ Просто для справки я сказал "Мне нужна половина записей, это неправильно, количество записей после учета того, чтоi,j == j,i являетсяn*(n+1)/2

Ответы на вопрос(1)

Ваш ответ на вопрос