|
Перевести long в char
|
|||
---|---|---|---|
#18+
Добрый день! Подскажите пжл как в запросе поле long перевести в char? Примерно такой запрос, где p.high_value тип long select * from table1 t, dba_tab_partitions p where t.col1 = p.high_value ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 12:14 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
Вы точно поискали ответ на форуме или погуглили? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 12:16 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
Master_Detail, да. Нашел функции, которые не смог использовать в запросе ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 12:24 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions Добрый день! Подскажите пжл как в запросе поле long перевести в char? Примерно такой запрос, где p.high_value тип long select * from table1 t, dba_tab_partitions p where t.col1 = p.high_value в общем случае - никак сравните лимиты по этим типам и успокойтесь ну еще есть путь - зарыть тот тип long на.., то есть в пропасть для чего и ждет вас to_lob уже лет 20 как ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 13:03 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
думаю, что Server Side Java должна с Long работать нормально. Но сам не проверял. Нужды не было В OCI (C) и Client Java проблем с Long нет. Ф-ции для работы с BLOB совершенно нормально работают и с Long'ами. Подозреваю разный интерфейс Long / Blob был до (возможно включительно) PRO*C Oracle 8.0. Уже в 8i интерфейс унифицировали. AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 13:33 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions, У Вас лонг в табличке или вью? ps если длина до 32к то через ф-цию пл/скл ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 14:06 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions select * from table1 t, dba_tab_partitions p where t.col1 = p.high_value ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 14:19 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
кит северных морей, нужно найти определенные названия партиций при наложении условий на таблицу table1 Т.е. существует очень большая таблица table1. нужно бежать по нужным партициям и дропать их ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 14:50 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions Stax, вью жаль, нет ровида надеялся что dba_tab_partitions токо для примера тагда можно определится что для dba_tab_partitions уникальный ключ и по нему в pl/sql сравнивать col1 = p.high_value ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:04 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions кит северных морей, нужно найти определенные названия партиций при наложении условий на таблицу table1 Т.е. существует очень большая таблица table1. нужно бежать по нужным партициям и дропать их 1) dbms_rowid.rowid_object(table1.rowid) + dba_objects.data_object_id 2) alter table drop partition for ( ... ) с учетом значения all_tab_partitions.interval писать свой собственный парсер имеет смысл тогда, когда вам зачем-то нужно получить метаданные секции, в которой нет ни одной строки. в общем случае там очень много нюансов, которые нужно учесть (например то, что RANGE-секционирование бывает многоколоночным). скорее всего, вам это не нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:09 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions, А конструкция partition for () не подойдёт? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:09 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions кит северных морей, нужно найти определенные названия партиций при наложении условий на таблицу table1 Т.е. существует очень большая таблица table1. нужно бежать по нужным партициям и дропать их ну и бегите и дропайте .. partition for ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:12 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
кит северных морей TQuestions кит северных морей, нужно найти определенные названия партиций при наложении условий на таблицу table1 Т.е. существует очень большая таблица table1. нужно бежать по нужным партициям и дропать их 1) dbms_rowid.rowid_object(table1.rowid) + dba_objects.data_object_id 2) alter table drop partition for ( ... ) с учетом значения all_tab_partitions.interval писать свой собственный парсер имеет смысл тогда, когда вам зачем-то нужно получить метаданные секции, в которой нет ни одной строки. в общем случае там очень много нюансов, которые нужно учесть (например то, что RANGE-секционирование бывает многоколоночным). скорее всего, вам это не нужно. ну и сильные духом могут побаловаться с недокументированной tbl$or$idx$part$num, которая позволяет получить object_id секции по значению partition key. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:15 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
К сожалению, у меня? наверное? не такой большой опыт...я не совсем понял ваших решений. Можно на пальцах, как найти названия партиций в таблице table1, например, по условию col2 = 1, если таблица парционирована по col1, а названия партиций лежат в поле long dba_tab_partitions.high_value ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:28 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions К сожалению, у меня? наверное? не такой большой опыт...я не совсем понял ваших решений. Можно на пальцах, как найти названия партиций в таблице table1, например, по условию col2 = 1, если таблица парционирована по col1, а названия партиций лежат в поле long dba_tab_partitions.high_value вам же всё показали уже нет нужды знать имя секции, если знаете значение из той секции, которую хотите например, удалить (какое? да любое ) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:38 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions К сожалению, у меня? наверное? не такой большой опыт...я не совсем понял ваших решений. Можно на пальцах, как найти названия партиций в таблице table1, например, по условию col2 = 1, если таблица парционирована по col1, а названия партиций лежат в поле long dba_tab_partitions.high_value Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:47 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
orawish нет нужды знать имя секции, если знаете значение из той секции, которую хотите например, удалить (какое? да любое ) авторпо условию col2 = 1, если таблица парционирована по col1, SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:51 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions например, по условию col2 = 1, если таблица парционирована по col1 Именно для варианта секционирована по одному полю, а фильтр по совершенно другому? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 15:53 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
Хотя можно и выполнить DROP PARTINION FOR всем полученным значениям COL1 с NULL exception handler на ORA-14702 но неэффективно (двойной поиск). SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 16:07 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
SY, не работает( ничего не возвращает. поменял на all_objects или dba_objects, тогда результат есть, но partition_name пусто ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 16:17 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
env, можно подробнее ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 16:18 |
|
Перевести long в char
|
|||
---|---|---|---|
#18+
TQuestions, В вашем примере секции нарезаны по col 1 , но условие по col 2 . Это опечатка или действительно надо найти все секции, в которых есть хотя бы одна строка с полем col 2 отвечающим на момент запроса условию фильтра? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2020, 16:24 |
|
|
start [/forum/topic.php?fid=52&fpage=36&tid=1880854]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 306ms |
total: | 452ms |
0 / 0 |