ROWID в Oracle SQL. Введение
ROWID — это специальный псевдостолбец в Oracle SQL, который указывает уникальный физический адрес строки в таблице. Он отображает, где именно на диске находится строка — вплоть до файла, блока и позиции в блоке.
Это один из самых быстрых способов обращения к строке и инструмент продвинутой диагностики, обновлений и анализа.
🔤 Написание
Формат ROWID может выглядеть, например, так:
🔄 Где используется ROWID
Быстрый доступ к конкретной строке
Поиск дубликатов
Удаление/обновление строк без первичного ключа
Диагностика производительности
Сравнение, отладка и логгинг
🧪 10 Примеров использования ROWID
1️⃣ Вывести ROWID каждой строки
2️⃣ Найти дубликаты по имени, используя ROWID
3️⃣ Удалить дубликаты с использованием ROWID
4️⃣ Обновить строку по ROWID
5️⃣ Получить строку по ROWID
6️⃣ Сравнение двух таблиц по ROWID
7️⃣ Сортировка по ROWID (как по порядку вставки)
8️⃣ Сравнение строк при импорте данных
9️⃣ Получение строки с наименьшим ROWID
🔟 Использование ROWID в PL/SQL
🧩 Заключение
ROWID — это мощный системный механизм, обеспечивающий максимально быстрый доступ к строкам. Он может быть незаменим при поиске дубликатов, отладке и точечной модификации данных.
💡 Запомни:
ROWID— физический адрес строкиНе является надёжным постоянным идентификатором (при rebuild он меняется)
Используется для удаления дубликатов, ускорения выборок и диагностики
Поддерживается во всех DML-операциях
🔜 Следующая статья:
REVERSE в Oracle SQL — как использовать разворот индексов и строк