К сожалению идея «нам нужно как можно скорее запуститься» с плевками в сторону архитектуры, безопасности и отказоустойчивости — повсеместная беда.
Даже понятно, чем оно вызвано — законами и тенденциями рынка.
Если честно, не участвовала ни в одном проекте (не с нуля), в котором бы не было адовых костылей )) Где то меньше, где то больше, но кажется везде.
Я примерно по таким соображениям не связываюсь с платными приложениями =/
Ибо в основном, во всяком случае игры (работала в этой сфере), всяко сосут и разводят, независимо от платности приложения, так что выгоды покупать мало.
Нет, приложение должно быть бесплатным. Но для покупки крутых юнитов придется кроме стандартных ресурсов еще использовать платину, получаемую только через донат ))
А, ну тогда так:
select id from employee a1
where a1.chief_id is null
or a1.chief_id not in (select id from employee where department_id=a1.department_id);
в 2 там равно, да. очепятало.
...where salary=(select…
для 4 как вариант
select id from employee a1 where a1.chief_id is null and exists (select id from employee where department_id=a1.department_id and chief_id is not null);
или я не совсем понимаю задание. Как без признака рук-ва в таком случае отличить рук-ля от безруководительного подчиненного? У них будет один отдел и у обоих же NULLовый chief_id. Недостаточно информативная схема? )
по 5му посмотрела коммент выше, если таковой отдел не один, то можно такую странную конструяклю использовать:
select department_id from employee a1 where (select max(salary) from employee where department_id=a1.department_id)=(select max(salary) from employee group by department_id order by 1 desc limit 1);
1. select id from employee a1 where salary>(select salary from employee where id=a1.chief_id);
2. select id from employee a1 where salary>(select max(salary) from employee where department_id=a1.department_id);
3. select id from department where (select count(*) from employee where department_id=department.id)<=3;
4. select id from employee a1 where chief_id is null and (select department_id from employee where id=a1.chief_id)=department_id;
5. select department_id from (select department_id, sum(salary) from employee group by department_id order by 2 desc) as a1 limit 1;
на быструю руку с тестированием на постгре.
Эти все пишутся и на бумажке. А вот доп несколько задумал — его бы да, уже с предоставлением работающей схемы.
Даже понятно, чем оно вызвано — законами и тенденциями рынка.
Если честно, не участвовала ни в одном проекте (не с нуля), в котором бы не было адовых костылей )) Где то меньше, где то больше, но кажется везде.
2 — Если ли вариант перевода со смежной специальности?
Или инстанс.
Кластер — как некоторое абстрагированное от прочих хранилище.
Лисбет Саландер в исполнении Нуми Рапас
Почему то вспомнилась сразу)
Спасибо! (:
Ибо в основном, во всяком случае игры (работала в этой сфере), всяко сосут и разводят, независимо от платности приложения, так что выгоды покупать мало.
А вот для смартфонов наверное не очень пойдет.
И да, ждем HMM3,5 (:
select id from employee a1
where a1.chief_id is null
or a1.chief_id not in (select id from employee where department_id=a1.department_id);
...where salary=(select…
для 4 как вариант
select id from employee a1 where a1.chief_id is null and exists (select id from employee where department_id=a1.department_id and chief_id is not null);
или я не совсем понимаю задание. Как без признака рук-ва в таком случае отличить рук-ля от безруководительного подчиненного? У них будет один отдел и у обоих же NULLовый chief_id. Недостаточно информативная схема? )
select department_id from employee a1 where (select max(salary) from employee where department_id=a1.department_id)=(select max(salary) from employee group by department_id order by 1 desc limit 1);
2. select id from employee a1 where salary>(select max(salary) from employee where department_id=a1.department_id);
3. select id from department where (select count(*) from employee where department_id=department.id)<=3;
4. select id from employee a1 where chief_id is null and (select department_id from employee where id=a1.chief_id)=department_id;
5. select department_id from (select department_id, sum(salary) from employee group by department_id order by 2 desc) as a1 limit 1;
на быструю руку с тестированием на постгре.
Эти все пишутся и на бумажке. А вот доп несколько задумал — его бы да, уже с предоставлением работающей схемы.
pg_basebackup требует пустую датадир и железобетонно копирует все. А rsync таки мержит. При больших объемах rsync определенно экономит время
в 9.2 там доработали кой чего, да
pg_basebackup получается же тоже надо сначала делать, потом отправлять на слейв, потом там разворачивать?