Цикл for oracle: FOR LOOP — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

PL/SQL Цикл по полям.

 
Курдль   (2008-08-22 17:37) [0]

Коллеги!
Возможно ли в триггере организовать цикл по полям таблицы?
Это нужно для замысловатого журналирования написать триггера почти на все таблицы, чтобы вычислять изменившиеся поля и писать их в логи. На SQL.ru искал решения — но нашел только такие же вопросы без ответов…


 
Правильный$Вася   (2008-08-22 18:36) [1]

FOR x IN( SELECT * FROM User_Tab_Cols WHERE table_name = ...


 
Игорь Шевченко ©   (2008-08-22 18:53) [2]


> Это нужно для замысловатого журналирования написать триггера

> почти на все таблицы, чтобы вычислять изменившиеся поля
> и писать их в логи.

А как ты себе это представляешь ?

IF :NEW||col_name <> :OLD||col_name THEN
 log_record_change ?

проще триггер сгенерировать программно или использовать Oracle Workspace Manager для ведения истории записей


 
Труп Васи Доброго ©   (2008-08-22 21:12) [3]


> чтобы вычислять изменившиеся поля и писать их в логи.

А чем тебе сам триггер не угодил? Зачем «вычислять» изменивщиеся поля, если при каждом изменении записи вызывается триггер, вот и сравнивай в нём, как Игорь предложил
> IF :NEW||col_name <> :OLD||col_name THEN

А дальше делай что угодно.
Такое ощущение, что либо ты не понимаешь что такое триггер и как он работает, либо ты не корректно описал задачу. Поясни плиз.


 
Игорь Шевченко ©   (2008-08-23 09:35) [4]

Труп Васи Доброго ©   (22. 08.08 21:12) [3]

То, что я предложил — это несколько нонсенс 🙂


 
Petr V. Abramov ©   (2008-08-23 11:00) [5]


> Это нужно для замысловатого журналирования написать триггера
> почти на все таблицы, чтобы вычислять изменившиеся поля
> и писать их в логи.

тогда лучше в сторону logminer погляди
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_logmnr.htm#i79049


 
Petr V. Abramov ©   (2008-08-23 12:04) [6]

или 11g с Total Recall
http://www.oracle.com/database/total-recall.html

P.S.
> Курдль
на DATABASE OPTIONS DETAILS 18.09 пойдешь?


 
Курдль   (2008-08-25 09:34) [7]


> А как ты себе это представляешь ?
> IF :NEW||col_name <> :OLD||col_name THEN
>  log_record_change ?
> проще триггер сгенерировать программно или использовать
> Oracle Workspace Manager для ведения истории записей

Ага! 🙂 Жаль, нет смайлика типа из м/ф «Вовка в Тридевятом царстве»: «А вы и есть за меня будете? — Ага!»
Именно так и хотелось бы.


Дело в том, что я не разработчик. И не заказчик. А где-то в промежности. 🙁
Заказчики, как всегда, заказали немного криво, а подрядчики, как всегда, добавили кривизны. Требовать от последних при всех доработках еще и журналирование по полной схеме поддерживать — нереально (это не входило в ФТ). А включить в один change request «всеобъемлющий скрипт» — еще можно было бы договориться.


> Petr V. Abramov ©   (23.08.08 12:04) [6]
> на DATABASE OPTIONS DETAILS 18.09 пойдешь?

А меня туда никто не приглашал 🙁
Я как-то в последнее время в BI-тусовке прижился.


 
Игорь Шевченко ©   (2008-08-25 09:52) [8]

Курдль   (25.08.08 09:34) [7]


> Ага! 🙂 Жаль, нет смайлика типа из м/ф «Вовка в Тридевятом
> царстве»: «А вы и есть за меня будете? — Ага!»

> Именно так и хотелось бы.

Я бы программно сгенерировал такой триггер (такие триггеры), а что — набор полей есть, логику ты знаешь, раз уж обычного AUDIT-а недостаточно


 
Petr V. Abramov ©   (2008-08-25 11:32) [9]


> Игорь Шевченко ©   (25.08.08 09:52) [8]

аудит
> почти на все таблицы
это жесть.
так же, как и триггеры


 
Игорь Шевченко ©   (2008-08-25 11:52) [10]

Petr V. Abramov ©   (25.08.08 11:32) [9]


> аудит
> > почти на все таблицы
> это жесть.

И че ? Есть заказчики, которые желают знать, кто именно и что изменил. Их полное и неотъемлемое право


 
Курдль   (2008-08-25 13:22) [11]


> Игорь Шевченко ©   (25. 08.08 11:52) [10]
> И че ? Есть заказчики, которые желают знать, кто именно
> и что изменил. Их полное и неотъемлемое право

Кстати, я давно уже интересуюсь гранью, когда пора уж будет переходить на хранилища данных во всех ипостасях (в части, касающейся «историзации» данных).
Даже ветку хотел завести на тему «нормальная форма и версионность/историзация — как им ужиться?».


 
Курдль   (

2008-08-25 14:01) [12]


> Petr V. Abramov ©   (25.08.08 11:32) [9]
> это жесть.
> так же, как и триггеры

Чем тебе триггеры-то не угодили?
Это, на мой взгляд, единственная ценность из всей серверной логики.


 
Игорь Шевченко ©   (2008-08-25 14:57) [13]


> Это, на мой взгляд, единственная ценность из всей серверной
> логики.

В серверной логике немножко больше ценностей, например, view и пакеты 🙂
Но главная ценность в серверной логике — это то, что можно не гонять данные туда-сюда, обсчитывая ту самую логику.


 
Курдль   (

2008-08-25 15:12) [14]


> Игорь Шевченко ©   (25.08.08 14:57) [13]
> Но главная ценность в серверной логике — это то, что можно
> не гонять данные туда-сюда, обсчитывая ту самую логику.

Я уж спорил на эту тему с Ю.Зотовым и Petr V. Abramov за пивом.
И мне казалось, что привел весомые аргументы.
Гонять данные — это, конечно, не кошерно. И я против выполнения логики на клиенте. Я — за трехзвенку с мощным сервером приложений.
Вот мои аргументы.
1. В проекте накладно содержать много разнородных разработчиков.
2. Трудно поддерживать повторяемость в проектах под разные СУБД.
3. В то время, когда программирование продвинулось от процедурного к объектному, а уж не за горами и победа паттернов, — СУБД только делают неуклюжие попытки перейти к объектному программированию.


 
Игорь Шевченко ©   (2008-08-25 16:45) [15]

Курдль   (25.08.08 15:12) [14]


> Я уж спорил на эту тему с Ю.Зотовым и Petr V. Abramov за
> пивом.

Будет желание и возможность — можешь и со мной за пивом поспорить.


> 2. Трудно поддерживать повторяемость в проектах под разные
> СУБД.

Собственно, разрабатывать относительно большой проект под разные СУБД особо большого смысла не имеет — получится «плохой под разные СУБД» проект, слово «плохой» можно смело заменить на «неоптимальный».

Мало того, что все СУБД отличаются в механизмах работы, каждый их механизм встроен в СУБД и оптимизирован, следовательно, работает всяко быстрее (и надежнее), чем попытки его имитации на клиенте любого рода, будь то толстый клиент или сервер приложений.

Я Кайта процитирую:

«Лучшим способом, позволяющим достичь некоторого уровня мобильности приложения для множества баз данных, является кодирование всех компонентов базы данных, используемых приложением, в хранимых процедурах.»

Ну и кроме всего прочего, стоимость СУБД обычно несопоставима со стоимостью большого корпоративного приложения…


 
Курдль   (2008-08-25 17:24) [16]


> Игорь Шевченко ©   (25.08.08 16:45) [15]
> Будет желание и возможность — можешь и со мной за пивом поспорить.

Да леГко! 🙂  Только Савелия не предлагать. Я туда в разумное время не доеду.
Мой ареал — между ЦАО и ВАО.

Кстати, я в своих аргументах против серверной логики о «мультибазовых» проектах не упоминал.

Я говорил про технологическую вооруженность софтверной компании.
Кайт — мужчинка уважаемый. Но он, кажись, и говорил, что «при проектировании БД самый худший враг — догматизм».
Про авторитетность зерцал IT-шных наук. Я с интервалом в год имел удовольствие присутствовать на семинарах с участием 2-х главных светил в области хранилищ данных — Р.Кимбалла и Б.Инмона (который первый и ввел в обиход словосочетание ХД). Так у них чуть ли не диаметрально противоположные архитектурные подходы. Однако — у обоих десятки внедренных с успехом проектов уровня «Пентагон» за плечами.
И еще пример из области ХД.
Признанный лидер в области нитеграции — Informatica создала средство ETL Informatica Power Center, который служит для извлечения данных из БД-источников, их трансформации и загрузки в БД-приемники. Так вот — он работает на собственном сервере приложений и выполняет коды специализированных программ.
А oracle Data Integrator и тем более Oracle Warehouse Builder, нацеленные на создание скриптов и процедур для исполнения СУБД, далеко отстают от Informatica.


 
Игорь Шевченко ©   (2008-08-25 17:40) [17]


> Да леГко! 🙂  Только Савелия не предлагать. Я туда в разумное
> время не доеду.
> Мой ареал — между ЦАО и ВАО.

Э…пораньше бы 🙂 Сдается мне, что на ближайшее время у меня будет строго САО.

Что касается примеров — оно все конструкторы, и ETL Informatica Power Center и «oracle Data Integrator и тем более Oracle Warehouse Builder» — то есть, дается полуфабрикат и пара дюжин напильников, которыми этот полуфабрикат доводится до приемлемого в использовании продукта.
Может, оно и неплохо, может, и очень неплохо, но я веду речь о готовых продуктах, за которые конечный заказчик денег платит, разработкой каковых я, собственно, и занимаюсь. И делать в этом случае конструктор, прикладывая к нему кучу напильников, мне не слишком улыбается, еще и по той причине, что продукт довольно специализирован, знаний по предметке накоплено достаточно, узкие места и способы их обхода примерно известны. Так что заказчику проще приобрести оракл 🙂


 
Германн ©   (2008-08-26 01:49) [18]

Эээ.
Вы давайте продолжать рассуждения о
> Трудно поддерживать повторяемость в проектах под разные
> СУБД.

и
> Собственно, разрабатывать относительно большой проект под
> разные СУБД особо большого смысла не имеет — получится «плохой
> под разные СУБД» проект, слово «плохой» можно смело заменить
> на «неоптимальный».
>

О пиве и о местонахождении (географии административных округов) можно «потрепаться» в соответствующей конференции. 🙂

«По-ммедленнее, пожалуйста. Я записсываю.»
(с) Шурик


 
Германн ©   (2008-08-26 02:01) [19]

Я серьёзно. Я действительно «записываю».
Для меня это весомый аргумент в разговоре с т.н. «техническим» «директором».
И не случайно я поставил кавычки два раза.


 
Курдль   (2008-08-26 09:23) [20]


> Германн ©   (26. 08.08 02:01) [19]
>
> Я серьёзно. Я действительно «записываю».
> Для меня это весомый аргумент в разговоре с т.н. «техническим»
> «директором».
> И не случайно я поставил кавычки два раза.

А что, собственно, надо оспорить или защитить?
Я о «мультибазовых» проектах не упоминал. Но я не против них. Более того, я участвовал в одном таком. Просто не надо питать иллюзий, что можно создать коробочную версию системы, чтобы, типа, при установке она спросила: «На Вашем ПК обнаружены следующие 3 СУБД: …  Какую из них выбрать?».
Просто если для кастомизации под конкретную СУБД потребуется 10% от проектного ресурса — это хороший результат. Но достичь его будет немыслимо, если серверную логику повесить на СУБД.


 
Игорь Шевченко ©   (2008-08-26 09:42) [21]

Курдль   (26.08.08 09:23) [20]


> Просто если для кастомизации под конкретную СУБД потребуется
> 10% от проектного ресурса — это хороший результат. Но достичь
> его будет немыслимо, если серверную логику повесить на СУБД.
>

Да, конечно, достичь такого результата немыслимо не только, если повесить логику на СУБД. СУБД, они не только имеют разные средства для создания серверной логики, они еще и ведут себя по-разному в отношениях с клиентами.

Опять же, процитирую Кайта:
«Фундаментальные модели согласованности и управления параллелизмом разных баз данных радикально отличаются друг от друга. Последовательность операторов в одной базе данных может, а иногда и будет приводить к результату, отличному от результатов в другой базе данных».

Из этого, увы, следует, что для того, чтобы разрабатывать надежные приложения не зависящие от СУБД или делать «кастомизацию» под разные СУБД необходимо иметь в команде разработчиков людей, которые ориентируются во внутренностях конкретной СУБД, как поп в Ветхом законе.

Весьма вероятно, что твой вопрос в какой-то из СУБД (про поля в триггере) решается легко и просто, а вот в Oracle, увы, не решается, да оно и не надо 🙂


 
Курдль   (2008-08-26 11:28) [22]


> Из этого, увы, следует, что для того, чтобы разрабатывать
> надежные приложения не зависящие от СУБД или делать «кастомизацию»
> под разные СУБД необходимо иметь в команде разработчиков
> людей, которые ориентируются во внутренностях конкретной
> СУБД, как поп в Ветхом законе.

Приведи пример (не касающийся оговоренного триггера).
Матерые ораклисты с презрением смотрят на мой ораклевый код «…left outer join … on …». Однако, он в оракле работает ничуть не хуже, чем «(+) = «. (Кстати, СУБД оракл иногда ругается на нее, как на устаревшую).
Где должна проявиться особо узкая специализация разработчиков? 99% запросов можно исполнить на классическом ANSI.


 
Игорь Шевченко ©   (2008-08-26 11:47) [23]

Курдль   (26.08.08 11:28) [22]


> Приведи пример (не касающийся оговоренного триггера).

Том Кайт, «Эффективное проектирование приложений Oracle», стр. 17


> 99% запросов можно исполнить на классическом ANSI.

Исполнить можно. Результаты могут отличаться


> Матерые ораклисты с презрением смотрят на мой ораклевый
> код «. ..left outer join … on …». Однако, он в оракле
> работает ничуть не хуже, чем «(+) = «.

Ну это же просто синонимы…


 
Petr V. Abramov ©   (2008-08-26 12:19) [24]


> И че ? Есть заказчики, которые желают знать, кто именно
> и что изменил. Их полное и неотъемлемое право

это уже все написано в логах. есть инструмент, чтоб логи разобрать. Нафига городить тыщу дурацких триггеров и тормозить базу?


 
Курдль   (2008-08-26 13:31) [25]


> Petr V. Abramov ©   (26.08.08 12:19) [24]
>
>
> > И че ? Есть заказчики, которые желают знать, кто именно
> > и что изменил. Их полное и неотъемлемое право
>
> это уже все написано в логах. есть инструмент, чтоб логи
> разобрать. Нафига городить тыщу дурацких триггеров и тормозить
> базу?

Конгениально, коллега!

Только надо знать особенности организационной структуры и информационной безопасности в конкретной компании!
Если логи доступны DB-админам, находящимся в другом конце города и вовсе не напрашивающимся (мягко говоря) на доп. работу?

А «торможение триггерами» могу себе представить только в хранилищах данных, где критичны периоды массовой загрузки информации. В OLTP-системах такой триггер отработает незаметно.


 
Sergey Masloff   (2008-08-26 22:50) [26]

Petr V. Abramov ©   (26.08.08 12:19) [24]

>это уже все написано в логах. есть инструмент, чтоб логи разобрать. >Нафига городить тыщу дурацких триггеров и тормозить базу?
Торможения нет проверялось…

А логи. .. если просмотр истории ситуация частая то не очень удобно в логи лазать каждый раз. Вобщем все от ситуации зависит в одном на логах нормально в другом и триггер сгенеренный не помешает.


 
Sergey Masloff   (2008-08-26 22:51) [27]

Действительно на DATABASE OPTIONS DETAILS 18.09 кто еще идет? Я пока точно не знаю но с вероятностью 50% пойду


 
Petr V. Abramov ©   (2008-08-27 01:26) [28]

Удалено модератором


 
Petr V. Abramov ©   (2008-08-27 01:30) [29]

опять же:
поле в таблице рпибавили/убавили.
софт д.б. чтоб триггеры по крайней мере valid остались.


 
Германн ©   (2008-08-27 01:33) [30]


> Курдль   (26.08.08 09:23) [20]
>
> А что, собственно, надо оспорить или защитить?

> Просто не надо
> питать иллюзий, что можно создать коробочную версию системы,
>  чтобы, типа, при установке она спросила: «На Вашем ПК обнаружены
> следующие 3 СУБД: …  Какую из них выбрать?».
>

Вот именно такие аргументы я и «записываю». Тем более если эти аргументы высказаны в подобной дискуссии.


 
Petr V. Abramov ©   (2008-08-27 02:11) [31]

Удалено модератором


 
Германн ©   (2008-08-27 02:19) [32]

Удалено модератором


 
Курдль   (2008-08-27 12:39) [33]


> Германн ©   (27. 08.08 01:33) [30]
> Вот именно такие аргументы я и «записываю». Тем более если
> эти аргументы высказаны в подобной дискуссии.

Тут Вам посоветовать ничего нельзя, не зная, что за приложение Вы разрабатываете.
А вдруг какй-нибудь OLAP-продвинутый построитель отчетов? Тогда может и надо его под разные базы затачивать. Или, тем более, — среду ETL. Так ей сам Бог велел!..


 
Германн ©   (2008-08-28 01:42) [34]


> Курдль   (27.08.08 12:39) [33]
>
>
> > Германн ©   (27.08.08 01:33) [30]
> > Вот именно такие аргументы я и «записываю». Тем более
> если
> > эти аргументы высказаны в подобной дискуссии.
>
>
> Тут Вам посоветовать ничего нельзя, не зная, что за приложение
> Вы разрабатываете.
> А вдруг какй-нибудь OLAP-продвинутый построитель отчетов?
>  Тогда может и надо его под разные базы затачивать. Или,
>  тем более, — среду ETL. Так ей сам Бог велел!..
>

Я в последнее время ничего сам не разрабатываю. Ну в отношении программ для РС. Но я записываю подобные аргументы для представления их тем, кто хочет создать ПО, которое записывает в БД данные (и показывает их), причем «независимо» от провайдера и типа БД.


 
Игорь Шевченко ©   (2008-09-05 11:06) [35]


> Возможно ли в триггере организовать цикл по полям таблицы?

http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:59412348055


Основы SQL и PL/SQL

Введение: 

Обзор основных концепций базы данных Oracle 12c и сопутствующих продуктов. Обсуждение основных концепций, а также теоретических и физических аспектов реляционной базы данных. Введение в SQL и технологии разработки на нем. Обзор схемы HR и таблиц, используемых в этом курсе. Документация и дополнительные ресурсы. 

Извлечение данных при помощи команды SELECT: 

Список возможностей команды SELECT. Создание отчета из результата выполнения базовой команды SELECT. Неопределенные значения в арифметических операциях. Псевдонимы столбцов. Слияние строк, символьные литералы, альтернативный оператор цитирования и ключевое слово DISTINCT. Использование команды DESCRIBE для вывода структуры таблицы. 

Ограничение и сортировка данных: 

Использование предложения WHERE для выборки необходимых строк. Использование операторов сравнения и логических операторов в предложении WHERE. Описание правил приоритета операторов сравнения и логических операторов. Использование символьных литералов в предложении WHERE. Сортировка строк с использованием предложения ORDER BY команды SELECT. Использование сортировок в порядке возрастания и порядке убывания. Переменные подстановки. 

Использование однострочных функций:

Демонстрация различий между однострочными и многострочными функциями SQL. Преобразование строк при помощи символьных функций, используемых в списке SELECT и предложении WHERE. Преобразование чисел при помощи функций ROUND, TRUNC и MOD. Арифметические операции по отношению к типу данных DATE. Использование функций для работы с датами. 

Использование функций преобразования и условных выражений:

Описание явного и неявного преобразования типов данных. Использование функций преобразования TO_CHAR, TO_NUMBER и TO_DATE. Вложенные функции. Применение функций NVL, NULLIF и COALESCE к данным. Использование логических условий IF THEN ELSE в команде SELECT. 

Агрегирование данных при помощи групповых функций:

Использование групповых функций в команде SELECT для создания аналитических отчетов. Описание функций AVG, SUM, MIN и MAX. Обработка неопределенных значений групповыми функциями. Создание групп данных при помощи предложения GROUP BY. Исключение групп данных при помощи фразы HAVING. 

Отображение данных из нескольких таблиц при помощи соединений:

Синтаксис соединения таблиц для доступа к данным более, чем одной таблицы. Соединение таблиц при помощи синтаксиса SQL:1999. Просмотр данных из таблиц при помощи внешнего соединения. Соединение таблицы самой с собой. Создание кросс-соединений. 

Использование подзапросов:

Типы проблем, решаемые при помощи подзапросов. Однострочные подзапросы. Групповые функции в подзапросах. Многострочные подзапросы. Использование операторов ANY и ALL в многострочных подзапросах. Использование оператора EXISTS. 

Операторы работы над множествами:

Описание операторов работы над множествами. Использование операторов работы над множествами для объединения нескольких запросов в один. Описание операторов UNION, UNION ALL, INTERSECT и MINUS. Сортировка результатов при использовании операторов работы над множествами. 

Язык изменения данных (DML):

Вставка строк в таблицу. Изменение строк в таблице. Использование операторов DELETE и TRUNCATE. Сохранение и отказ от изменений при помощи операторов COMMIT и ROLLBACK. Описание согласованности чтения. Описание фразы FOR UPDATE. 

Использование языка определения данных (DDL) для создания и изменения таблиц:

Основные объекты базы данных. Создание таблиц. Описание типов данных. Описание ограничений. Создание таблицы при помощи подзапроса. Изменение таблиц. Удаление таблиц. 

Другие объекты схемы:

Создание, изменение и извлечение данных из представления. Выполнение операций DML через представление. Удаление представления. Создание, изменение и удаление последовательностей. Создание и удаление индексов. Создание и удаление синонимов. 

Введение в PL/SQL:

Обзор PL/SQL. Преимущества и структура PL/SQL. Обзор типов блоков PL/SQL. Создание анонимных блоков. Генерация вывода из блоков PL/SQL. 

Объявление идентификаторов в PL/SQL: 

Различные типы идентификаторов в подпрограммах PL/SQL. Описание и инициализация переменных. Описание типов данных. Использование переменных для хранения данных. Скалярные типы данных. Атрибут %TYPE. Связанные (bind) переменные. Использование последовательностей в выражениях PL/SQL. 

Исполняемые операторы:

Лексические единицы в блоке PL/SQL. Комментарии в коде. Функции SQL в PL/SQL. Преобразование типов данных. Вложенные блоки. Операторы в PL/SQL. 

Взаимодействие с сервером Oracle:

Использование операторов SQL в PL/SQL. Изменение данных на сервере при помощи PL/SQL. Концепции SQL-курсоров. Атрибуты SQL-курсоров для обратной связи с операторами DML. Фиксация и откат транзакций. 

Управляющие структуры:

Управление выполнением в PL/SQL при помощи оператора IF. Управление выполнением в PL/SQL при помощи оператора CASE. Простой цикл. Цикл WHILE. Цикл FOR. Контроль итераций в циклах. 

Работа с составными типами данных:

Записи PL/SQL. Атрибут %ROWTYPE. Вставка и обновление при помощи записей PL/SQL. Ассоциативные массивы INDEX BY и методы работы с ними. 

Использование явных курсоров:

Определение курсора. Открытие курсора. Извлечение данных из курсора. Закрытие курсора. Курсор в цикле FOR. Атрибуты явного курсора. Фразы FOR UPDATE и WHERE CURRENT. 

Обработка исключений:

Определение исключений. Обработка исключений в PL/SQL. Предопределенные исключения. Перехват предопределённых и непредопределенных исключений сервера Oracle. Перехват исключений, определяемых пользователями. Распространение исключений. Процедура RAISE_APPLICATION_ERROR. 

Создание хранимых процедур и функций:

Представление о хранимых процедурах и функциях. Различие между анонимными блоками и подпрограммами. Создание простой процедуры. Создание простой процедуры с параметром IN. Создание простой функции. Вызов процедуры. Вызов функции.

Hive Cursor Loop — Google Улей — sql — Переполнение стека

stackoverflow.com › вопросы › курсор в улье

Единственное, что вы можете сделать, это выполнить запрос улья и получить ResultSet, а затем повторить его. Интересная часть заключается в том, как вы хотите . ..

hive — зацикливание с использованием Hiveql

Альтернатива реализации курсора Hive — sql

Оператор вставки в куст с использованием возврата курсора -1 — python

Выборка куста по одной строке за раз с использованием запроса на выборку

Дополнительная информация из stackoverflow.com www.hplsql.org › for-cursor

Оператор FOR (курсорный цикл) — справочник по PL/HQL. Оператор FOR открывает курсор, повторно выполняет один или несколько операторов для каждой строки и закрывает курсор.

как использовать цикл в улье — Сообщество Cloudera — 138850

community.cloudera.com › Вопросы поддержки › td-p

02.09.2019 · С помощью небольшого bash мы можем просмотреть все наши таблицы, добавив результаты в файл: #get a list of the files hive — e «показать таблицы»; > hivetables.txt.

Мне не удалось настроить HPLSQL с HDP 2.5.3

Не удалось подключиться к таблице IMPALA/HIVE — сообщество Cloudera

Как избежать истечения времени ожидания подключения клиента с помощью hive on spark . com

В SQL Server курсор может быть Hive генерирует выражения запроса во время компиляции… При каждой итерации оператор курсора FOR LOOP извлекает строку из …

Ähnliche Fragen

Как запустить цикл в кусте ?

Поддерживает ли Hive многострочные комментарии?

Что такое курсор в SQL?

Что такое язык запросов куста?

Как конвертировать PL-SQL (курсоры, триггеры, процедуры, циклы внутри…

www.quora.com › How-do-I-convert-PL-SQL-cursers-triggers-procedures-..

Как преобразовать код PL-SQL (курсоры, триггеры, процедуры, циклы внутри циклов) в HQL (язык запросов Hive)? Есть ли способ преобразования или какой-либо инструмент …

Oracle PL/SQL Cursor: Implicit, Explicit, For Loop с примером

www.guru99.com › pl-sql-cursor

vor 6 Tagen · This руководство охватывает определение курсора PL/SQL, неявный курсор, явный курсор, атрибуты курсора, операторы курсора цикла for с примерами . ..

Курсор — Apache Phoenix

phoenix.apache.org › курсоры

Чтобы иметь возможность работать с подмножеством строк в запросе, Phoenix поддерживает управляющую структуру CURSOR. В следующей последовательности показано, как использовать …

[PDF] Оптимизация циклов курсора в реляционных базах данных — arXiv

arxiv.org › pdf

05.05.2020 · системы обработки запросов, такие как SparkSQL, Hive и другие. Системы SQL-on-Hadoop [31]. Онлайн-поиск курсора.

Как использовать Python с Hive для обработки больших данных? — СофтКрафт

www.softkraft.co › python-with-hive

За последние несколько лет мы все больше слышим о том огромном количестве данных, которые генерируются людьми. Это постепенно переросло в концепцию, согласно которой, если вы …

[PDF] Aggify: снятие проклятия циклов курсора с помощью пользовательских агрегатов

www.microsoft.com › en-us › prod › 2020/08 › Aggify -SIGMOD2020

системы обработки запросов, такие как SparkSQL, Hive и другие. Системы SQL-on-Hadoop [30]. Курсоры могут быть в виде курсоров SQL, которые можно использовать …

ähnliche shanfragen

Hive Loop через строки

Hive для петли

Hive, где

Hive Query

Hive Cursor -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP -LOOP.

Курсор в улье? — sql — Переполнение стека

stackoverflow.com › вопросы › курсор в улье

Единственное, что вы можете сделать, это выполнить запрос улья и получить ResultSet, а затем повторить его. Самое интересное, как вы хотите …

hive — зацикливание с использованием Hiveql

Альтернатива реализации курсора Hive — sql

Оператор вставки в куст с использованием возврата курсора — 1 — python

Выборка Hive по одной строке за раз с использованием запроса на выборку

Оператор FOR (цикл курсора) — справочник по PL/HQL

www. hplsql.org › for-cursor

Оператор FOR (цикл курсора) — справочник по PL/HQL. Оператор FOR открывает курсор, повторно выполняет один или несколько операторов для каждой строки и закрывает курсор.

как использовать цикл в улье — Сообщество Cloudera — 138850

community.cloudera.com › Вопросы поддержки › td-p

02.09.2019 результаты в файл: #получить список файлов hive -e «show table;» > hivetables.txt.

Мне не удалось настроить HPLSQL с HDP 2.5.3

Не удалось подключиться к таблице IMPALA/HIVE — сообщество Cloudera

Как избежать истечения времени ожидания подключения клиента с кустом на spark

Weitere Ergebnisse von community.cloudera.com

цикл курсора куста

noalglutine.it › цикл курсора куста

В SQL Server курсор может быть Hive генерирует выражения запроса во время компиляции … С каждой итерацией , оператор курсора FOR LOOP извлекает строку из …

Ähnliche Fragen

Как запустить цикл в кусте?

Что такое курсор для цикла?

Как использовать курсор для цикла в SQL Server?

Как использовать цикл while вместо курсора в SQL Server?

Как конвертировать PL-SQL (курсоры, триггеры, процедуры, циклы внутри. ..

www.quora.com › How-do-I-convert-PL-SQL-cursers-triggers-procedures-.. .

Как преобразовать код PL-SQL (курсоры, триггеры, процедуры, циклы внутри циклов) в HQL (язык запросов Hive)? Есть ли какой-либо способ преобразования или какой-либо инструмент …

Oracle PL/SQL Cursor : Неявный, явный, цикл for с примером

www.guru99.com › pl-sql-cursor

vor 6 Tag · Этот учебник охватывает определение курсора PL/SQL, неявный курсор, явный курсор, атрибуты курсора, курсор для цикла утверждения с примерами …

Курсор — Apache Phoenix

phoenix.apache.org › курсоры

Чтобы иметь возможность работать с подмножеством строк в запросе, Phoenix поддерживает управляющую структуру CURSOR. В следующей последовательности показано, как использовать …

[PDF] Оптимизация циклов курсора в реляционных базах данных — arXiv

arxiv.org › pdf

05.05.2020 · системы обработки запросов, такие как SparkSQL, Hive и другие.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *