|
|
|
Помогите разобраться с созданием правильной VIEW
|
|||
|---|---|---|---|
|
#18+
Доброе время суток! Возникла следующая проблема: Создаю представление из двух идентичных по структуре таблиц Table1 : Field1 int,Field2 int,Field3 int Table2 : Field1 int,Field2 int,Field3 int CREATE VIEW V1 As SELECT a.Field1, [Field2]=CASE WHEN a.Field2 is Null THEN b.Field2 ELSE a.Field2 END, b.Field3 FROM Table1 a LEFT OUTER JOIN Table2 b ON a.Field1=b.Field2 При селекте все показывает быстро и как нужно, но стоит мне сделать связку "Данной VIEWS" на другую таблицу по полю Field2 как начинает сильно тормозить. Однако по другим полям если объединять, то все нормально. Вопрос: что можно сделать? Стоит ли создвавать индекс на VIEWS? (Сервер MS SQL 2000) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2002, 13:48:34 |
|
||
|
Помогите разобраться с созданием правильной VIEW
|
|||
|---|---|---|---|
|
#18+
Чтобы проиндексировать view в ней не должно быть outer joinов. Попробуйте перефразировать Код: plaintext Можно попробовать вкачать эту вьюху в #tmp Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2002, 16:06:27 |
|
||
|
|

start [/forum/topic.php?fid=46&tid=1820260]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
24ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 319ms |

| 0 / 0 |
