powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Перевести long в char
5 сообщений из 30, страница 2 из 2
Перевести long в char
    #40003535
TQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
env
TQuestions,

В вашем примере секции нарезаны по col 1 , но условие по col 2 . Это опечатка или действительно надо найти все секции, в которых есть хотя бы одна строка с полем col 2 отвечающим на момент запроса условию фильтра?


не опечатка. col2 это дата. нужно взять все запись например от 01.01.2020 и удалить партиции, которые по полю col1
...
Рейтинг: 0 / 0
Перевести long в char
    #40003539
TQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
env
TQuestions,

Запрос Соломона работает. Если таблица не в вашей схеме, то вам в all/dba_objects с указанием схемы.



select o.subobject_name,o.* from user_objects o where o.subobject_name is not null - этот запрос всего 4 записи возращает у меня
...
Рейтинг: 0 / 0
Перевести long в char
    #40003545
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TQuestions,

А что при этом в user_tab_partitions?

TQuestions
нужно взять все запись например от 01.01.2020 и удалить партиции, которые по полю col1

т.е. если в секции миллион записей с другими датами и одна от 01.01.2020 - то секцию надо убить полностью? Интересный подход.
...
Рейтинг: 0 / 0
Перевести long в char
    #40003550
TQuestions
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
env
TQuestions,

А что при этом в user_tab_partitions?

TQuestions
нужно взять все запись например от 01.01.2020 и удалить партиции, которые по полю col1

т.е. если в секции миллион записей с другими датами и одна от 01.01.2020 - то секцию надо убить полностью? Интересный подход.

А что при этом в user_tab_partitions? - одна запись
на одну дату более одной партиции
...
Рейтинг: 0 / 0
Перевести long в char
    #40003589
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TQuestions
SY, не работает( ничего не возвращает. поменял на all_objects или dba_objects, тогда результат есть, но partition_name пусто


Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
SQL> CREATE TABLE TST_TABLE1(
  2                          ID   NUMBER,
  3                          NAME VARCHAR2(10 CHAR)
  4                         )
  5    PARTITION BY RANGE (ID) INTERVAL(5)
  6      (
  7       PARTITION P_INITIAL VALUES LESS THAN (5)
  8      )
  9  /

Table created.

SQL> INSERT INTO TST_TABLE1
  2  SELECT  LEVEL,
  3          CHR(ASCII('A') + MOD(LEVEL,5) - 1)
  4    FROM DUAL
  5    CONNECT BY LEVEL <= 7
  6  /

7 rows created.

SQL> SELECT  *
  2    FROM  TST_TABLE1
  3  /

        ID NAME
---------- ----
         1 A
         2 B
         3 C
         4 D
         5 @
         6 A
         7 B

7 rows selected.

SQL> SELECT  T.*,
  2          O.SUBOBJECT_NAME PARTITION_NAME
  3    FROM  TST_TABLE1 T,
  4          DBA_OBJECTS O
  5    WHERE T.NAME = 'A'
  6      AND O.OBJECT_ID = DBMS_MVIEW.PMARKER(T.ROWID)
  7  /

        ID NAME PARTITION_NAME
---------- ---- --------------
         1 A    P_INITIAL
         6 A    SYS_P105037

SQL> SELECT  T.*,
  2          O.SUBOBJECT_NAME PARTITION_NAME
  3    FROM  TST_TABLE1 T,
  4          DBA_OBJECTS O
  5    WHERE T.NAME = '@'
  6      AND O.OBJECT_ID = DBMS_MVIEW.PMARKER(T.ROWID)
  7  /

        ID NAME PARTITION_NAME
---------- ---- --------------
         5 @    SYS_P105037

SQL>



Но все это не имеет большого смысла ибо если мы нашли что NAME = '@' в партиции SYS_P105037 и дропнули SYS_P105037 то кроме NAME = '@' мы уничтожили строки с ID = 6,7. Вряд ли это то что требуется.

SY.
...
Рейтинг: 0 / 0
5 сообщений из 30, страница 2 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Перевести long в char
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]