Как мне отобразить UIPopoverView в качестве аннотации к представлению карты? (iPad)

Я пытаюсь объединить две относительно простые таблицы вместе, но мой запрос серьезно зависает. Я не уверен, почему, но я думаю, что это может иметь какое-то отношение к функции «между». Моя первая таблица выглядит примерно так (с множеством других столбцов, но это будет единственный столбец, который я выберу):


RowNumber
1
2
3
4
5
6
7
8

Моя вторая таблица «группирует» мои строки в «блоки» и имеет следующую схему:


BlockID     RowNumberStart     RowNumberStop
1           1                  3
2           4                  7
3           8                  8

Желаемый результат, который я хочу получить, - это связать RowNumber с BlockID, как показано ниже, с тем же количеством строк с первой таблицей. Результат будет выглядеть так:


RowNumber   BlockID           
1           1
2           1
3           1
4           2
5           2
6           2
7           2 
8           3

Чтобы получить это, я использовал следующий запрос, запись результатов во временную таблицу:


select A.RowNumber, B.BlockID
into   TEMP_TABLE
from   TABLE_1 A left join TABLE_2 B
on     A.RowNumber between B.RowNumberStart and B.RowNumberStop

TABLE_1 и TABLE_2 на самом деле очень большие таблицы. Таблица 1 содержит около 122 миллионов строк, а таблица TABLE_2 - около 65 миллионов строк. В TABLE_1 RowNumber определен как bigint, а в TABLE_2 BlockID, RowNumberStart и RowNumberStop все определены как int. Не уверен, что это имеет значение, но просто хотел включить эту информацию.

Запрос завис на восемь часов. Подобные запросы по этому типу и объему данных не занимают столько времени. Так что мне интересно, может ли это быть оператор «между», который подвешивает этот запрос.

Определенно приветствую любые предложения о том, как сделать это более эффективным.

8
задан Cade Roux 7 April 2011 в 14:20
поделиться