Due prigionieri in celle diverse lanciano una moneta e, vedendo solo il risultato della propria moneta, devono indovinare il risultato della moneta del vicino. Se almeno uno indovina, entrambi vengono liberati; se entrambi sbagliano, vengono uccisi. Quale strategia di risposte devono scegliere per sopravvivere con il 100% di probabilità?
Data Analyst
Proponi un algoritmo che, utilizzando i dati sul traffico delle chiamate e la geolocalizzazione degli abbonati ogni 15 minuti, determini se due abbonati vivono insieme.
Come misurare esattamente 4 litri usando contenitori da 3 e 5 litri e una fonte d'acqua illimitata?
Conosci la statistica matematica e hai applicato i test A/B nella pratica? Quali tipi di medie conosci?
Quale simbolo bisogna indicare dopo SELECT per selezionare tutte le colonne?
Come lasciare solo le categorie con un fatturato totale superiore a 100 rubli?
Hai mai lavorato con Git?
I risultati restituiti dalle seguenti query saranno diversi? 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'
Proponi un algoritmo per determinare il giorno di nascita dell'abbonato, avendo solo il registro chiamate e SMS: numeri in entrata e in uscita, data e ora, durata e tipo di evento.
Vengono presentate le tabelle product (informazioni su a quale categoria appartiene il prodotto in un intervallo di date specificato) e sale (dati di vendita del prodotto con data di vendita, prezzo per unità e quantità acquistata): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Prodotto 1|Categoria 1|[phone]|[phone]| |Prodotto 1|Categoria 2|[phone]|[phone]| |Prodotto 2|Categoria 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Prodotto 1|10 |5 | |[phone]|Prodotto 1|15 |2 | |[phone]|Prodotto 4|15 |2 | |[phone]|Prodotto 3|15 |2 | |[phone]|Prodotto 2|10.9 |300| |[phone]|Prodotto 1|12.7 |7 | È necessario scrivere una query che restituisca il ricavo totale per ogni categoria: |prod_cat |total_amt| |----------|---------| |Categoria 1|80 | |Categoria 2|84 | |Categoria 3|270 |
È necessario scrivere una query che restituisca il ricavo totale per ogni categoria: |prod_cat |total_amt | |Categoria 1|80 | |Categoria 2|84 | |Categoria 3|270 | Esiste una tabella di abbonati con record arrivati in momenti diversi. La data di caricamento del record è definita nel campo 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]| |3 |[phone]|4563 |0832 |[phone]| È necessario scrivere una query che restituisca la penultima registrazione caricata per chiave 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]| Esiste una tabella di abbonati con storico delle modifiche. Ogni record è valido nel periodo da valid_from_dt a valid_to_dt. Se un record viene chiuso, il successivo inizia nello stesso giorno. Per ogni abbonato, deve esserci un solo record attivo nell’intervallo [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 | È necessario scrivere una query che restituisca i record con una data di chiusura errata: |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 | con 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
Come classificare le vendite di prodotti che non rientrano in nessuna categoria, nella categoria "Altro"?
Nella stanza ci sono tre lampadine e tre interruttori all'esterno. Tutti sono spenti e si può entrare nella stanza solo una volta. Come determinare quale interruttore controlla ogni lampadina?
È necessario scrivere una query che restituisca la penultima registrazione caricata per la chiave id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| C'è una tabella di abbonati con storico delle modifiche. Ogni record per abbonato è valido nel periodo da valid_from_dt a valid_to_dt. Se un record viene chiuso, il successivo inizia nella stessa data. Per ogni abbonato, dovrebbe esserci solo un record attivo nell'intervallo [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 | È necessario scrivere una query che restituisca i record con date di chiusura errate. |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 |