составить SQL запрос 1. В службу поддержки пришло много жалоб: заказы, в которых есть гречка, доставляют почти час, хотя сервис обещает успеть в 30 минут. Проверь, действительно ли курьеры опаздывают. Выбери все заказы, где есть хотя бы один товар - «гречка» и время доставки свыше 30 минут. В результирующей таблице должны быть ID заказов и ID курьеров. В ответе приложи SQL-запрос.
2. Менеджер предложил добавить новую функциональность в продукт: мониторинг, который показывает самых активных клиентов за всё время работы компании. Проверь, что список пользователей корректно выводится на экран. На этом этапе разработки достаточно проверить только ID клиентов. Выбери пять самых активных клиентов по количеству заказов. В результирующую таблицу выведи ID каждого пользователя и число заказов. Отсортируй данные по убыванию числа заказов, выбери пять самых активных клиентов. В ответе приложи SQL-запрос.
3. Из бухгалтерии пришёл баг-репорт: зарплаты сотрудников рассчитываются некорректно. Оказалось, что почти все ошибки в расчётах — в расчётных листах менеджеров. Выведи список ID всех сотрудников, у которых в специализации содержится «менеджер», с зарплатой больше 70 000 рублей. В ответе приложи SQL-запрос.
Исходные данные для заданий:
Ты тестируешь сервис, который доставляет еду за 30 минут. Пока это маленький стартап, поэтому ты работаешь всего с четырьмя таблицами: Orders — все доставленные заказы; ORDERS_ID — ID заказов, int; USER_ID — ID пользователей, int; EMPLOYEE_ID — ID сотрудников, int; DELIVERY_TIME — время доставки в минутах, int; ITEMS — список товаров, char; Users — пользователи; USER_ID — ID пользователей, int; FULL_NAME — полное ФИО пользователя, char; PHONE — номер телефона пользователя, char; ADDRESS — адрес пользователя, char; Employees — работники; EMPLOYEE_ID — ID сотрудника, int; FIRST_NAME —имя сотрудника, char; LAST_NAME — фамилия сотрудника, char; PHONE — телефон сотрудника, char; JOB_ID — ID специализации, int; Jobs — типы работ в сервисе JOB_ID — ID специализации, int; JOB_TYPE — тип специализации, char; HOURS — число рабочих часов в неделю, int; SALARY — зарплата сотрудника с данной специализацией в рублях, int;
Var a,b,c,d,i,f,g,h,n:integer; begin writeln('введите число'); readln(a); g:=0; c:=0; d:=0; i:=0; f:=0; writeln('введите число для сравнения'); readln(h); for b:=a downto 1 do begin if a mod b = 0 then writeln('его делитель ==>',b); if a mod b = 0 then c:=b+c; if a mod b = 0 then if b mod 2 = 0 then d:=d+b; if a mod b = 0 then if b mod 2 <> 0 then i:=i+1; if a mod b = 0 then f:=f+1; if a mod b = 0 then if b mod 2 = 0 then g:=g+1;i f a mod b = 0 then if b>h then n:=n+1; end; writeln('сумма его делителей ==>',c); writeln('сумма его чётных делителей ==>',d); writeln('количество нечётных делителей ==>',i); writeln('количество чётных делителей ==>',g); writeln('количество делителей ==>',f); writeln('количество делителей больших b ==>',n); end.
Delphi / Pascal function mySimpleDigit(a: integer):boolean; var i: integer; begin for i:=sqrt(a) downto 1 do if not (a mod i = 0) then mySimpleDigit:=false else mySimpleDigit:=true; end; var i,n,s: integer; begin write('Введите число: '); readln(n); if ((n>1) and (n<1000000)) then begin s:=0; for i:=2 to n-1 do if ((n mod i = 0) and (mySimpleDigit(i) = true)) then s:=s+i; end; writeln('Сумма всех простых делителей: ', s); readln; end.
C++ #include <cmath> #include <iostream> using namespace std; bool mySimpleDigit(unsigned a) { for (unsigned i =sqrt(a); i > 1; i--) if (!(a % i)) return false; return true; } int main() { unsigned n,s; cin >> n; if ((n>1) && (n<1000000)) { s=0; for (unsigned i=2; i<=n; i++) if ((n%i==0) && (mySimpleDigit(i)==true)) s+=i; cout << "Summa vsex prostix deliteley: " << s; } else cout << "Vvedite drugoe chislo"; return 0; }
begin
writeln('введите число');
readln(a);
g:=0;
c:=0;
d:=0;
i:=0;
f:=0;
writeln('введите число для сравнения');
readln(h);
for b:=a downto 1 do begin
if a mod b = 0 then writeln('его делитель ==>',b);
if a mod b = 0 then c:=b+c;
if a mod b = 0 then if b mod 2 = 0 then d:=d+b;
if a mod b = 0 then if b mod 2 <> 0 then i:=i+1;
if a mod b = 0 then f:=f+1;
if a mod b = 0 then if b mod 2 = 0 then g:=g+1;i
f a mod b = 0 then if b>h then n:=n+1;
end;
writeln('сумма его делителей ==>',c);
writeln('сумма его чётных делителей ==>',d);
writeln('количество нечётных делителей ==>',i);
writeln('количество чётных делителей ==>',g);
writeln('количество делителей ==>',f);
writeln('количество делителей больших b ==>',n);
end.
function mySimpleDigit(a: integer):boolean;
var i: integer;
begin
for i:=sqrt(a) downto 1 do
if not (a mod i = 0) then mySimpleDigit:=false else mySimpleDigit:=true;
end;
var i,n,s: integer;
begin
write('Введите число: ');
readln(n);
if ((n>1) and (n<1000000)) then
begin
s:=0;
for i:=2 to n-1 do
if ((n mod i = 0) and (mySimpleDigit(i) = true)) then s:=s+i;
end;
writeln('Сумма всех простых делителей: ', s);
readln;
end.
C++
#include <cmath>
#include <iostream>
using namespace std;
bool mySimpleDigit(unsigned a) {
for (unsigned i =sqrt(a); i > 1; i--)
if (!(a % i)) return false;
return true;
}
int main() {
unsigned n,s;
cin >> n;
if ((n>1) && (n<1000000)) {
s=0;
for (unsigned i=2; i<=n; i++)
if ((n%i==0) && (mySimpleDigit(i)==true)) s+=i;
cout << "Summa vsex prostix deliteley: " << s;
} else cout << "Vvedite drugoe chislo";
return 0;
}