powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Ищу ментора по pl\sql с высоким уровнем экспертизы
25 сообщений из 49, страница 1 из 2
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984780
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Завалил тестовое задание на должность сеньора. Обратной связи не дали, просто сказали, что все не правильно. Нужно посмотреть задание и мои решения к нему, и дать внятное разъяснение, где я накосячил. Кто может помочь и обладает высоким уровнем экспертизы - пишите свой ценник в скайп live:.cid.cd8a65e72ed2739
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984783
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
path_to,

тут выкладывай, поможем!
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984784
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
path_to,

Боюсь, что придется немного побыть КЭПом, и сказать очевидное - но ИМХО - сеньёр, на которого вы претендуете - и без форумов должен сам знать/понимать что у него по знаниям, что крепко и хорошо, что вообще экспертно, а что еще тянуть, чего развивать и где не хватает.
Может все-таки рановато и средний уровень, не?
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984785
Андрей Юниор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMisha
Боюсь, что придется немного побыть КЭПом, и сказать очевидное - но ИМХО - сеньёр, на которого вы претендуете - и без форумов должен сам знать/понимать что у него по знаниям, что крепко и хорошо, что вообще экспертно, а что еще тянуть, чего развивать и где не хватает.
Может все-таки рановато и средний уровень, не?

Видя, какие люди работают сеньорами... Знаете, вообще не показатель)))

Я бы не стал тратить своё время на самобичевания лишь из-за того, что какая-то компания с низкой корпоративной культурой не удосужилась объяснить, что им не понравилось. Скорее всего приливы и отливы мочи к головному мозгу сыграли главную роль.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984787
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PsyMisha,

а может кому-то помог сделать работу.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984800
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
path_to,

То есть тебе надо чтобы кто-то с высоты своего ЧСВ профессионализма объяснил, почему твой код - говно? Так ты попал куда надо! Тут найдётся много людей, которые сделают это бесплатно и с превеликим удовольствием. Тащи свой говнокод.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984833
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может просто контора - гавно. И смысл тогда самокопанием заниматься?

Или я не знаю что надо так запороть чтобы вообще не дали обратки? Может нахамил кому в отделе кадров.
Или просто вёл себя дерзко? Или вообще не понял задание. Кстати тоже вариант.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984844
Фотография Vyatich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton

Или я не знаю что надо так запороть чтобы вообще не дали обратки? Может нахамил кому в отделе кадров.
Или просто вёл себя дерзко? Или вообще не понял задание. Кстати тоже вариант.

Тогда здесь не ментор pl/sql нужен, а психоаналитик с высоким уровнем экспертизы.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984846
xerxf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
может код идеален и просто в конторе какие то свои заморочки?
я в одну контору когда то тестовое писал - им реально человек был нужен, но ведущая была женщина.. с скажем так - сложным характером и откровенно сабботировала набор. В итоге в моём тестовом придрались к какой то ерунде. и то я об этом узнал только потому, что hr там была моя хорошая знакомая и она таки фидбек выбила. Не, я конечно готов признать, что у меня там была не ерунда, а реально ужас ужас.. но если эта контора в течение полутора лет не могла найти в нашем достаточно немаленьком городе ораклиста - это о чём то говорит.
А код сюда кидай - если там что то интересное - его и бесплатно с удоольствием посмотрят -прокомментируют
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984885
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PsyMishaМожет все-таки рановато и средний уровень, не?
Да, я понимаю что не дорос до сеньора, но они сами вышли на меня и я решил испытать свои знания. Но чтобы сделать работу над ошибками, надо понимать где я ошибся. К сожалению, в ближайшем окружении не с кем посоветоваться.

Relic Hunterа может кому-то помог сделать работу
Нет, это чисто тестовое задание. Видно что хотели посмотреть мой скилл при работе с коллекциями и транзакциями.

maytonМожет нахамил кому в отделе кадров.
Нет, я был весьма корректен.

1.
Код: 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.
declare
  cursor c1 is
    select distinct z.clnt_id,
                    z.subs_id,
                    sum(z.pay_sum) over(partition by z.subs_id) as all_pay_sum
      from (select t.clnt_id,
                   t.subs_id,
                   t.pay_sum,
                   t.pay_date,
                   t.del_date,
                   row_number() over(partition by t.clnt_id, t.subs_id order by t.pay_date desc) as rnk
              from test_pay t
             where t.del_date is null
             order by t.clnt_id, t.subs_id, t.pay_date desc) z
     where z.rnk < 11;
  type data_set_tp is table of c1%rowtype;
  l_data_set data_set_tp;
  --v_lmt pls_integer := 9999;--Лимит кратный цифре 3
begin
  open c1;
  loop
    fetch c1 bulk collect
      into l_data_set /*limit v_lmt*/
    ; --Здесь можно было бы ограничить кол-во через LIMIT чтобы поберечь память в PGA
    exit when l_data_set.count = 0;
    --Ищем индексы массива не кратные трем и удаляем их из коллекции
    for x in l_data_set.first .. l_data_set.count loop
      if mod(x, 3) != 0 then
        l_data_set.delete(x);
      end if;
    end loop;
    --Обрабатываем оставшиеся после удаления строки в коллекции
    forall idx in indices of l_data_set
      insert into test_data
        (clnt_id, subs_id, all_pay_sum)
      values
        (l_data_set(idx).clnt_id,
         l_data_set(idx).subs_id,
         l_data_set(idx).all_pay_sum);
  end loop;
  close c1;
  commit; 
end;



2.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
declare
  l_cnt number := 0;
begin
  for i in 1 .. 23 loop
    begin
      savepoint iteraction;
      update test t set t.n = t.n - 1 where t.n = i;
      insert into test_log (n) values (i);
    exception
      when others then
        rollback to savepoint iteraction;
    end;
    if mod(l_cnt, 5) = 0 then
      commit;
    end if;
  end loop;
end;
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984886
monsenior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
path_to
Завалил тестовое задание на должность сеньора. Обратной связи не дали, просто сказали, что все не правильно. Нужно посмотреть задание и мои решения к нему, и дать внятное разъяснение, где я накосячил. Кто может помочь и обладает высоким уровнем экспертизы - пишите свой ценник в скайп live:.cid.cd8a65e72ed2739


Обычно такое происходит, когда нужно устроить своего человека, а остальные собесы показать
что люди на рынке говно, а свой человек золотцо, который чуть ли не за копейки работать готов.
Причем тестовое дают по вопросам которые ты в работе используешь - чуть меньше чем никогда.
Пример из моей практики: напишите в каком порядке будут печататься WriteLine из конструкторов базового и
наследуемых классов в c#. Ньюанс - должность MSSQL разраб.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984889
monsenior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
path_to
PsyMishaМожет все-таки рановато и средний уровень, не?

Да, я понимаю что не дорос до сеньора, но они сами вышли на меня и я решил испытать свои знания. Но чтобы сделать работу над ошибками, надо понимать где я ошибся. К сожалению, в ближайшем окружении не с кем посоветоваться.

Relic Hunterа может кому-то помог сделать работу
Нет, это чисто тестовое задание. Видно что хотели посмотреть мой скилл при работе с коллекциями и транзакциями.

maytonМожет нахамил кому в отделе кадров.
Нет, я был весьма корректен.

1.
Код: 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.
declare
  cursor c1 is
    select distinct z.clnt_id,
                    z.subs_id,
                    sum(z.pay_sum) over(partition by z.subs_id) as all_pay_sum
      from (select t.clnt_id,
                   t.subs_id,
                   t.pay_sum,
                   t.pay_date,
                   t.del_date,
                   row_number() over(partition by t.clnt_id, t.subs_id order by t.pay_date desc) as rnk
              from test_pay t
             where t.del_date is null
             order by t.clnt_id, t.subs_id, t.pay_date desc) z
     where z.rnk < 11;
  type data_set_tp is table of c1%rowtype;
  l_data_set data_set_tp;
  --v_lmt pls_integer := 9999;--Лимит кратный цифре 3
begin
  open c1;
  loop
    fetch c1 bulk collect
      into l_data_set /*limit v_lmt*/
    ; --Здесь можно было бы ограничить кол-во через LIMIT чтобы поберечь память в PGA
    exit when l_data_set.count = 0;
    --Ищем индексы массива не кратные трем и удаляем их из коллекции
    for x in l_data_set.first .. l_data_set.count loop
      if mod(x, 3) != 0 then
        l_data_set.delete(x);
      end if;
    end loop;
    --Обрабатываем оставшиеся после удаления строки в коллекции
    forall idx in indices of l_data_set
      insert into test_data
        (clnt_id, subs_id, all_pay_sum)
      values
        (l_data_set(idx).clnt_id,
         l_data_set(idx).subs_id,
         l_data_set(idx).all_pay_sum);
  end loop;
  close c1;
  commit; 
end;



2.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
declare
  l_cnt number := 0;
begin
  for i in 1 .. 23 loop
    begin
      savepoint iteraction;
      update test t set t.n = t.n - 1 where t.n = i;
      insert into test_log (n) values (i);
    exception
      when others then
        rollback to savepoint iteraction;
    end;
    if mod(l_cnt, 5) = 0 then
      commit;
    end if;
  end loop;
end;



к кускам кода нужно краткое описание, что код должен делать.
А то может задание было - крестиком вышивать.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984892
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное можно было решить задачу без коллекции. В чем ее смысл тут? Проредить выборку оставив кадую третью строку?

Наверное это можно было сделать по другому. А с коллекцией надо еще доказать что ты не переполнишь память
пользовательского процесса. Наверное от тебя и ждали такого обоснования.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984893
xerxf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
monsenior,

не всегда такое бывает ради своего человека. В моём случае ведущей просто нравилось быть великой, ужасной и незаменимой. В результате она героически работала по 12 часов, картинно страдала от этого, они профукали все возможные сроки, но за больше чем полтора года так никого и не взяли. Причём когда она ушла в другое место - хороший кандидат нашёлся моментально. вроде бы даже кто то из тех, кому она отказала ранее с очень очень негативным отзывом
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984898
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята, в сообщении где мой говнокод, есть приложенный вордовский файл с заданиями
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984899
xerxf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
path_to,

что то мой древний ворд не открывает пояснения. Коротенько - в чём смысл задания?
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984900
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
xerxf,

Содержимое файла

Пояснение по заданиям
Ускорение изменения данных, уменьшение числа проходов, количества переменных и прочая оптимизация кода – приветствуются, а для специалистов высокого уровня настоятельно рекомендуется. Это поможет в полной мере понять Ваш уровень, как разработчика и на собеседовании уже этот вопрос не поднимать.
Задание №1
Есть таблица test_pay :
Название колонки Описание колонки
clnt_id ID клиента
subs_id ID абонента
pay_sum Сумма платежа
pay_date Дата платежа
del_date Дата удаления платежа
Если платеж не удален, то не заполняется

и таблица test_data :
Название колонки Описание колонки
n ID (порядковый номер)
clnt_id ID клиента
subs_id ID абонента
all_pay_sum Сумма платежей

На клиенте может быть много абонентов.
Один и тот же абонент не может быть на разных клиентах.
У абонента может быть много платежей.
Нужно написать запрос, который выбирает сумму первых 10 не удалённых платежей на каждом из абонентов. Данные из запроса должны помещаться в коллекцию, содержащую поля: clnt_id, subs_id, all_pay_sum.
По завершению выборки данных в коллекцию, необходимо вставить каждую третью запись из этой коллекции в таблицу test_data. Допускается использование вспомогательных объектов и конструкций для решения задачи.

Задание №2
Есть две таблицы test и test_log :
Название колонки Описание колонки
n Порядковый номер (Primary Key)

Изначально в таблице test присутствует 23 записи с значением n от 1 до 23.
В таблице test_log присутствует запись со значением n = 8.

Необходимо написать цикл от 1 до 23 (номер шага цикла обозначим i), который:
1. Обновляет данные в таблице test для каждого n = i, устанавливая n = n - 1;
2. Вставляет в таблицу test_log запись с n = i.

При этом должны выполняться следующие условия:
1. Каждые 5 шагов должна выполняться фиксация изменений в таблицах.
2. Изменения по тем шагам, которые имели ошибки, НЕ должны быть зафиксированы в таблицах.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984903
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
xerxf,

более удобочитаемый вид (см. вложение)
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984905
xerxf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
path_to,

а зачем в первом задание вообще коллекции и циклы? нельзя там сразу в запросе выбрать каждую третью запись и insert сделать не в цикле, а сразу insert into .... select .... ?
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984907
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
xerxf,

я бы тоже запросом это сделал, но такое условие
из условия задачиНужно написать запрос, который выбирает сумму первых 10 не удалённых платежей на каждом из абонентов. Данные из запроса должны помещаться в коллекцию , содержащую поля: clnt_id, subs_id, all_pay_sum.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984908
Melkomyagkii_newbi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lcnt во втором куске не меняешь - это дефект. В первом сортировка по пейдей деск - это же получится 10 последних платежей, не? Тогда тоже дефект.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984909
Туман войны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, что оба запроса, можно сделать без курсоров.
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984910
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkomyagkii_newbi
lcnt во втором куске не меняешь - это дефект.


точно. я перед отправкой как раз этот кусок менял. хотел заменить l_cnt на i. Это точно косяк
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984913
xerxf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и во втором задание - 23 на 5 не делится. что будет с последними записями?
...
Рейтинг: 0 / 0
Ищу ментора по pl\sql с высоким уровнем экспертизы
    #39984914
path_to
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
xerxf,
xerxfи во втором задание - 23 на 5 не делится. что будет с последними записями?
да. верно. здесь коммита не будет. но это вроде попадает под условие Каждые 5 шагов должна выполняться фиксация изменений в таблицах.
т.е. следующего 5 шага не наступает
...
Рейтинг: 0 / 0
25 сообщений из 49, страница 1 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Ищу ментора по pl\sql с высоким уровнем экспертизы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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