Du žiauniai skirtingose kamerose meta monetą ir, matydami tik savo monetos rezultatą, turi pasakyti savo kaimyno monetos rezultatą. Jei bent vienas iš jų teisingai atspės, abu bus paleisti; jei abu suklysta, juos nužudys. Kokią atsakymo strategiją jie turėtų pasirinkti, kad išgyventų su 100% tikimybe?
Data Analyst
Pasiūlykite algoritmą, kuris kas 15 minučių remiasi skambučių srauto ir abonentų geolokacijos duomenimis, nustatys, ar du abonentai gyvena kartu.
Kaip tiksliai išmatuoti 4 litrus naudojant 3 ir 5 litrų indus ir neribotą vandens šaltinį?
Ar žinote matematinę statistiką ir ar taikėte A/B testavimą praktikoje? Kokius vidurkius žinote?
Kokį simbolį reikia nurodyti po SELECT, kad būtų pasirinkti visi stulpeliai?
Kaip palikti tik tas kategorijas, kurių bendrasis pelnas yra didesnis nei 100 rubliai?
Ar kada nors dirbote su Git?
Ar skirsies rezultāti, ko atgriež šādas vaicājumi? 1 select * from A left join B on A.id = B.id and B.val = 'A' 2 select * from A left join B on A.id = B.id where B.val = 'A'
Pasiūlykite algoritmą, kaip nustatyti abonento gimimo dieną, turint tik skambučių ir SMS žurnalą: įeinančius ir išeinančius numerius, datą ir laiką, trukmę ir įvykio tipą.
Pateiktos lentelės product (informacija apie tai, į kurią kategoriją priklauso produktas nurodytu laikotarpiu) ir sale (produktų pardavimo faktai su pardavimo data, vieneto kaina ir įsigytų vienetų skaičiumi): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Produktas 1|Kategorija 1|[phone]|[phone]| |Produktas 1|Kategorija 2|[phone]|[phone]| |Produktas 2|Kategorija 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Produktas 1|10 |5 | |[phone]|Produktas 1|15 |2 | |[phone]|Produktas 4|15 |2 | |[phone]|Produktas 3|15 |2 | |[phone]|Produktas 2|10.9 |300| |[phone]|Produktas 1|12.7 |7 | Reikia parašyti užklausą, kuri grąžina bendrą pajamas kiekvienai kategorijai: |prod_cat |total_amt| |----------|---------| |Kategorija 1|80 | |Kategorija 2|84 | |Kategorija 3|270 |
Kaip priskirti produktų pardavimus, kurie nepatenka į jokią kategoriją, į kategoriją „Kita“?
Категориялар боюнча жалпы кирешени кайтарган суроо жазуу керек: |prod_cat |total_amt | |Категория 1|80 | |Категория 2|84 | |Категория 3|270 | Түзмөктөрдүн жазуулары ар башка убакта келген абоненттер таблицасы бар. Жазуунун жүктөлгөн датасы raw_dt талаасында аныкталган: select * from abnt |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|4375 |4979 |[phone]| |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|5842 |589783|[phone]| |2 |[phone]|4563 |5326 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|5495 |7485 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Ключу id боюнча экинчи акыркы жүктөлгөн жазууну кайтарган суроо жазуу керек: |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Абоненттин өзгөрүүлөрүнүн тарыхы бар таблица бар. Ар бир жазуу valid_from_dt менен valid_to_dt интервалында иштейт. Эгер бир жазуу жабылса, кийинки жазуу ошол дата менен башталат. Ар бир абонент үчүн [valid_from_dt, valid_to_dt] интервалында бир гана иштеп жаткан жазуу болушу керек. select * from abnt |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |1 |[phone] |[phone] |[phone]|4375 |4979 | |2 |[phone] |[phone] |[phone]|5842 |589783| |2 |[phone] |[phone] |[phone]|4563 |5326 | |3 |[phone] |[phone] |[phone]|4563 |0832 | Необходимо написать запрос, который вернет те записи, у которых некорректная дата закрытия. |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |2 |[phone] |[phone] |[phone]|5842 |4979 | |2 |[phone] |[phone] |[phone]|4563 |5326 | with ranked as ( select msisdn, tarif_plan_id, account_id, raw_dt, row_number() over (partition by id order by raw_dt desc) as rn ) select id, msisdn, tarif_plan_id, account_id, raw_dt from ranked where rn = 2 order by id
Kambaryje yra trys lemputės ir lauke trys jungikliai. Visi išjungti, ir į kambarį galima įeiti tik kartą. Kaip nustatyti, kuris jungiklis valdo kiekvieną lemputę?
Reikia parašyti užklausą, kuri grąžins antrą iš naujausių įkeltų įrašų pagal id raktą: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| Yra prenumeratorių lentelė su pakeitimų istorija. Kiekvienas įrašas prenumeratoriui galioja nuo valid_from_dt iki valid_to_dt. Jei įrašas uždaromas, sekantis prasideda tą pačią dieną. Kiekvienam prenumeratoriui turėtų būti tik vienas aktyvus įrašas intervale [valid_from_dt, valid_to_dt]. select * from abnt |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |4375 |4979 | |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 | |2 |[phone] |[phone] |[phone] |4563 |0832 | Reikia parašyti užklausą, kuri grąžins įrašus su neteisinga uždarymo data. |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 |