Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
03.07.2015, 14:41
|
|||
---|---|---|---|
|
|||
Индексы с Population type = conditional |
|||
#18+
Добрый день! Извиняюсь за дурацкий вопрос, но чувствую себя забаненным в гугле - не смог ничего найти по теме. Можете объяснить или, еще лучше, ткнуть носом в то, где можно почитать про свойства индекса Population type - conditional? Начал с хелпа, но он как-то, хм, неинформативен: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
И так про все в этой области. Если ближе к конкретной задаче У меня есть таблица, в которой есть ID, Field1, Field2, ... Класс хранится посредством Cache SQL Storage Хочу построить индекс Field1 - Field2 - ID, который будет записываться только тогда, когда Field1<>Field2. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.07.2015, 17:17
|
|||
---|---|---|---|
Индексы с Population type = conditional |
|||
#18+
Mike Ivanov , В конце статьи есть ссылка (слайды 14 и 19) ПримерClass my.b Extends %Persistent [ SqlRowIdPrivate, StorageStrategy = sql ] { Index idx On ID [ IdKey, PrimaryKey ]; Index idxMy On (Field1, Field2); Property ID As %Integer; Property Field1 As %String; Property Field2 As %String; /// d ##class(my.b).Fill() ClassMethod Fill() { k ^my.bD,^my.bI &sql(insert into my.b(ID,Field1,Field2) values(1,'a','b')) &sql(insert into my.b(ID,Field1,Field2) values(2,'c','c')) &sql(insert into my.b(ID,Field1,Field2) values(3,'c','d')) zw ^my.bD,^my.bI } Storage sql { <SQLMap name="data"> <Data name="Field1"> <Piece>1</Piece> </Data> <Data name="Field2"> <Piece>2</Piece> </Data> <Global>^my.bD</Global> <RowIdSpec name="1"> <Expression>{L1}</Expression> <Field>ID</Field> </RowIdSpec> <Subscript name="1"> <AccessType>Sub</AccessType> <Expression>{ID}</Expression> </Subscript> <Type>data</Type> </SQLMap> <SQLMap name="index"> <Condition>{Field1}'={Field2}</Condition> <Global>^my.bI</Global> <PopulationType>conditional</PopulationType> <RowIdSpec name="1"> <Expression>{L3}</Expression> <Field>ID</Field> </RowIdSpec> <Subscript name="1"> <Expression>{Field1}</Expression> </Subscript> <Subscript name="2"> <Expression>{Field2}</Expression> </Subscript> <Subscript name="3"> <Expression>{ID}</Expression> </Subscript> <Type>index</Type> </SQLMap> <StreamLocation>^my.bS</StreamLocation> <Type>%CacheSQLStorage</Type> } } Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.07.2015, 17:20
|
|||
---|---|---|---|
|
|||
Индексы с Population type = conditional |
|||
#18+
servit, Большое спасибо, попробую. Поизучал исходники, потыкался сам в интерфейсе - не очень преуспел, с готовым примером должно быть легче. Mike ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=39&tablet=1&tid=1556626]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 147ms |
0 / 0 |